如何隐藏或线系列RadChart删除零值 [英] How to Hide or Remove Zero values in line series RadChart

查看:451
本文介绍了如何隐藏或线系列RadChart删除零值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

,我想删除行系列是展示价值zero.Is有任何可能的方式来隐藏或移除该值显示zero.Please提供任何解决方案或code。

I'm using Radchart,i want to remove the line series which is showing value zero.Is there any possible way to hide or remove the value showing zero.Please provide any solution or code.

先谢谢了。

推荐答案

在奋斗2天,我已经找到了解决方案,如何隐藏或删除线系列,其中包含zeros.I必须在4号线系列四线系列包含零的我,我要隐藏这些零值,我已经做了。

After 2 days of struggle i have found the solution how to hide or remove the line series which contains zeros.I have four line series in that 4th line series contains zero's i which i want to hide those zero values and i have done.

实施前

实施后

code

             //-------------------Styling------------------------           
        RadChart1.DefaultView.ChartLegend.Background = new SolidColorBrush(Color.FromArgb(255, 75, 119, 255));

        RadChart1.DefaultView.ChartArea.AxisY.StripLinesVisibility = Visibility.Collapsed;
        RadChart1.DefaultView.ChartArea.AxisY.MajorGridLinesVisibility = Visibility.Visible;

        RadChart1.DefaultView.ChartLegend.UseAutoGeneratedItems = true;
        RadChart1.DefaultView.ChartLegend.Header = "";


        RadChart1.DefaultView.ChartLegendPosition = Telerik.Windows.Controls.Dock.Bottom;
        RadChart1.DefaultView.ChartLegend.Foreground = new SolidColorBrush(Colors.White);
        RadChart1.DefaultView.ChartLegend.LegendItemStyle = new Style() { TargetType = typeof(ChartLegendItem) };
        RadChart1.DefaultView.ChartLegend.LegendItemStyle.Setters.Add(new Setter() { Property = Control.ForegroundProperty, Value = new SolidColorBrush(Colors.White) });


        ChartLegendItem ch1 = new ChartLegendItem() { Label = "FY10", Background = new SolidColorBrush(Colors.Blue), Foreground = new SolidColorBrush(Colors.White) };
        ChartLegendItem ch2 = new ChartLegendItem() { Label = "FY11", Background = new SolidColorBrush(Colors.Brown), Foreground = new SolidColorBrush(Colors.White) };
        ChartLegendItem ch3 = new ChartLegendItem() { Label = "FY12", Background = new SolidColorBrush(Colors.Green), Foreground = new SolidColorBrush(Colors.White) };
        ChartLegendItem ch4 = new ChartLegendItem() { Label = "FY13", Background = new SolidColorBrush(Colors.Black), Foreground = new SolidColorBrush(Colors.White) };

        ChartLegendItemCollection chC = new ChartLegendItemCollection();
        chC.Add(ch1);
        chC.Add(ch2);
        chC.Add(ch3);
        chC.Add(ch4);

        RadChart1.DefaultView.ChartLegend.UseAutoGeneratedItems = false;
        RadChart1.DefaultView.ChartLegend.Items.Clear();
        RadChart1.DefaultView.ChartLegend.Items.Add(chC[0]);
        RadChart1.DefaultView.ChartLegend.Items.Add(chC[1]);
        RadChart1.DefaultView.ChartLegend.Items.Add(chC[2]);
        RadChart1.DefaultView.ChartLegend.Items.Add(chC[3]);

        Style pathStyle1 = new Style(typeof(System.Windows.Shapes.Path));
        pathStyle1.Setters.Add(new Setter(Shape.StrokeProperty, new SolidColorBrush(Colors.Blue)));
        pathStyle1.Setters.Add(new Setter(Shape.StrokeThicknessProperty, 2));

        Style lineStyle1 = new Style(typeof(Telerik.Windows.Controls.Charting.LineSeries));
        lineStyle1.Setters.Add(new Setter(LineSeries.BorderLineStyleProperty, pathStyle1));

        Style pathStyle2 = new Style(typeof(System.Windows.Shapes.Path));
        //  pathStyle2.Setters.Add(new Setter(Shape.StrokeDashArrayProperty, "1"));
        pathStyle2.Setters.Add(new Setter(Shape.StrokeProperty, new SolidColorBrush(Colors.Brown)));
        pathStyle2.Setters.Add(new Setter(Shape.StrokeThicknessProperty, 2));

        Style lineStyle2 = new Style(typeof(Telerik.Windows.Controls.Charting.SelfDrawingSeries));
        lineStyle2.Setters.Add(new Setter(SelfDrawingSeries.BorderLineStyleProperty, pathStyle2));

        Style pathStyle3 = new Style(typeof(System.Windows.Shapes.Path));
        //  pathStyle3.Setters.Add(new Setter(Shape.StrokeDashArrayProperty, "1"));
        pathStyle3.Setters.Add(new Setter(Shape.StrokeProperty, new SolidColorBrush(Colors.Green)));
        pathStyle3.Setters.Add(new Setter(Shape.StrokeThicknessProperty, 2));

        Style lineStyle3 = new Style(typeof(Telerik.Windows.Controls.Charting.SelfDrawingSeries));
        lineStyle3.Setters.Add(new Setter(SelfDrawingSeries.BorderLineStyleProperty, pathStyle3));


        Style pathStyle4 = new Style(typeof(System.Windows.Shapes.Path));
        //pathStyle4.Setters.Add(new Setter(Shape.StrokeDashArrayProperty, "1"));
        pathStyle4.Setters.Add(new Setter(Shape.StrokeProperty, new SolidColorBrush(Colors.Black)));
        pathStyle4.Setters.Add(new Setter(Shape.StrokeThicknessProperty, 2));

        Style lineStyle4 = new Style(typeof(Telerik.Windows.Controls.Charting.SelfDrawingSeries));
        lineStyle4.Setters.Add(new Setter(SelfDrawingSeries.BorderLineStyleProperty, pathStyle4));

        DataSeries line1 = new DataSeries() { Definition = new LineSeriesDefinition() { ShowItemLabels = false, ShowPointMarks = false, SeriesStyle = lineStyle1 } };
        DataSeries line2 = new DataSeries() { Definition = new LineSeriesDefinition() { ShowItemLabels = false, ShowPointMarks = false, SeriesStyle = lineStyle2 } };
        DataSeries line3 = new DataSeries() { Definition = new LineSeriesDefinition() { ShowItemLabels = false, ShowPointMarks = false, SeriesStyle = lineStyle3 } };
        DataSeries line4 = new DataSeries() { Definition = new LineSeriesDefinition() { ShowItemLabels = false, ShowPointMarks = false, SeriesStyle = lineStyle4 } };


        //-------------------------Data Binding---------------------------
        List< WebService. RadChart1Data > objListAPS = new List<WebService.RadChart1Data>();
        objListAPS = (List< WebService. RadChart1Data >)e.Result.ToList();

        foreach (RadChart1Data obj in objListAPS)
        {
            line1.Add(new DataPoint(obj.Week, obj.BlueLine));
            line2.Add(new DataPoint(obj.Week, obj.RedLine));
            line3.Add(new DataPoint(obj.Week, obj.GreenLine));
            if (obj.BlackLine != 0)
                line4.Add(new DataPoint(obj.Week, obj. BlackLine));
        }

        RadChart1.DefaultView.ChartArea.DataSeries.Add(line1);
        RadChart1.DefaultView.ChartArea.DataSeries.Add(line2);
        RadChart1.DefaultView.ChartArea.DataSeries.Add(line3);
        RadChart1.DefaultView.ChartArea.DataSeries.Add(line4);

        RadChart1.DefaultView.ChartArea.AxisX.LayoutMode =  Telerik.Windows.Controls.Charting.AxisLayoutMode.Inside;

如果发现任何这个答案是非常有用的,请把它标记为正确答案它可能帮助他人。

if any found this answer is useful please mark it as correct answer it may helpful to others.

感谢

迪内希haraveer

dinesh haraveer

这篇关于如何隐藏或线系列RadChart删除零值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆