MindFusion--LineChart(折线图)

      最近在统计一些信息,需要用一些折线图来体现以下,于是就学习了一下Mindfusion的这个第三方的空间,感觉效果还是不错的,这里就先简单的介绍一下他们的基本属性的用法吧。

       因为我需要展示这些数据近些年来的走势的情况,所以用的是MindFusionLineChart控件,但是倒是不难,找了几个简单的例子,把几个属性熟悉了一些,这里大概分为界面样式,数据源设置着两部分吧。

       如果需要可以去这里边下载MindFusion:点击打开链接

       界面样式

        对于界面的样式,大概也就是搞清楚我们需要显示几部分数据,例如我下边的例子是显示两部分数据,也就是我需要两条曲线来显示数据的走向问题。

      如下图:

      MindFusion--LineChart(折线图)_第1张图片

     

       曲线的样式,横纵坐标的数据和命名,曲线的样式,网格线的实质,那么下边的代码就会为大家显示着几个基本的属性的设置。

     设置曲线的样式

<span style="font-size:14px;">         this.lineChart2.Shapes.Clear();
         this.lineChart2.Shapes.Add(Shape.Square);   //设置节点样式方形
         this.lineChart2.Shapes.Add(Shape.Circle);   //设置节点样式圆形
       //设置节点的颜色 
         this.lineChart2.ChartPens = new MindFusion.Drawing.PenCollection("n:0/#FFFBBAFC/3/0/0//0/0/10/,n:0/#FF0CB00C/3/0/0//0/0/10/");
         this.lineChart2.ShapeBrushes = new MindFusion.Drawing.BrushCollection("s:#FFFFE4E1,s:#FFC0FFC0");    //节点颜色
         this.lineChart2.ShapePens = new MindFusion.Drawing.PenCollection("n:0/#FFFBBAFC/2/0/0//0/0/10/,n:0/#FF0CB00C/2/0/0//0/0/10/");
   			//设置线条颜色
         this.lineChart2.ShapeSizes = new MindFusion.Charting.DoubleCollection("10"); //节点大小
         this.lineChart2.ChartBrushes = new MindFusion.Drawing.BrushCollection("s:#FFF8E2FC,s:#FFCEF2CE");    //线条颜色
         this.lineChart2.ChartMargins = new MindFusion.Charting.Margins("5,5,5,5");

//设置网格线
         SetPlotArea(lineChart2);

//设置图示
        this.lineChart2.LegendLabels = new MindFusion.Charting.StringCollection("三级修,四级修");</span>


      

       数据源设置

        数据源有分为本身的数据源和X轴的数据,Y轴的数据,节点的数据,这个不像我们普通的微软的表格控件,他如果只是简单的设置他的DataSource属性还是不行的。还要设置他的X轴的数据源,Y轴的数据源,和节点的数据(如果需要的话)

具体代码如下

<span style="font-size:14px;">//设置数据源等显示信息
            lineChart2.DataSource = dt;    //设置数据源
            this.lineChart2.XAxisSettings.AxisLength = 450;  //图形宽度设置
            lineChart2.TitleText = "北京铁路局动车组配属量统计";    //标题
            lineChart2.YData = new MindFusion.Charting.SeriesCollection(thirdRe + ";" + forthRe);   //Y轴数据源,数据类型ArrayList
            lineChart2.XData = DeptYears;    //X轴数据源,数据类型ArrayList或者List即可
            lineChart2.XAxisSettings.AxisDelta = 2;
            lineChart2.XAxisSettings.MinValue = 2007;   //最小值
            lineChart2.XAxisSettings.MaxValue = 2015  //最大值

            //设置每个节点显示数值
            lineChart2.Labels = new MindFusion.Charting.LabelsCollection(thirdRe + ";" + forthRe);   //节点显示的数值,数据格式为数据类型ArrayList
            this.lineChart2.LabelFont = new System.Drawing.Font("Tahoma", 10F);   //节点值字体的设置
            this.lineChart2.LabelType = MindFusion.Charting.LabelType.CustomText;    //节点字体的样式
</span>

       注意

       需要注意的是如果我们的横向坐标的Arraylist的数据有8个,那么节点的数据源的数组也一定要是8个,这样才能一一对应。还有便是如果我们设置的图标样式是没有节点的样式(光是折线),节点的数据源也就不会显示了。

这样一个简单的图标就能简单的设置出来了,简单的应用是没什么问题,但是说起来学这个简单的属性设置,还真是费了我一些功夫。

    因为这个控件在国内的资料真是少之又少,网上查了一下,也没什么可用的,于是就从他给的一些简单的例子里边的InitializeComponent();一点一点的找,因为自己还是经常用C#的代码,所以他的命名倒也不是不熟悉,于是就一点一点的尝试,如果对于大家有所帮组,那就太好了,如果没有的话,大家不妨安装这么一个程序,然后打开它的例子,在InitializeComponent();我相信里边也一定有大家需要的属性,总比在哪里一点一点的蒙来的实在。

 

你可能感兴趣的:(.net,C#,framework)