ZedGraph使用经验

ZedGraph资源

ZedGraph来源:http://sourceforge.net/project/showfiles.php?group_id=114675 ZedGraph

相关例子资源:http://zedgraph.org/wiki/index.php?title=Sample_Graphs

ZedGraph的特点:

第一,可以先生成图片后再显示,这对一些多用户并发有点帮助。(RenderMode.ImageTag)

第二,可以动态生成,不用保存文件,可以减少IO的读写消耗。(RenderMode.RawImage)

第三,比较多的呈现方式,比如曲线图、柱状图、饼图等。

ZedGraph的缺点:

第一,编码的时候,在设置属性时太烂了,一点注释都没有,不要说是中文的啦,就连英文都没有,太不方便了。

第二,图表的显示比较简陋,没有OpenFlashChar来得好看。

注意事宜

第一,当前的最新版本是5.1.5,我以前也使用过4.3.4的版本,这两个版本的差别很大,很多属性都已经不存在了,面向对象的感念可能加强了不少,也清晰了不少,因为现在的属性设置都是先实体,再属性了,而以前就比较混乱了。所以在使用不同的版本的时候要注意这点。

第二,在Windows Forms和 ASP.Net Web Form中使用是不同。

一些经验

一些属性设置

myPane.XAxis.Scale.FontSpec.Size = 30;//设置x轴的文字大小.
myPane.YAxis.Scale.FontSpec.Size = 30;//设置y轴的文字大小.
myPane.YAxis.MajorGrid.IsVisible = true;//设置虚线.
myPane.Chart.Border.IsVisible = false;//图表区域的边框设置.
myPane.Legend.IsVisible = false;//图表的注释标签显示设置项目.

动态根据传入的数据显示的方法

/// <summary>
        /// 曲线图.
        /// </summary>
        public void CreateLineChart(GraphPane myPane, IDictionary<int, int> dic, string title, string xField, string yFields, string format)
        {
            myPane.XAxis.Scale.FontSpec.Size = 30;//设置x轴的文字大小.
            myPane.YAxis.Scale.FontSpec.Size = 30;//设置y轴的文字大小.
            myPane.YAxis.MajorGrid.IsVisible = true;//设置虚线.
            myPane.Chart.Border.IsVisible = false;//图表区域的边框设置.
            myPane.Legend.IsVisible = false;//图表的注释标签显示设置项目.

            int rows = dic.Count;
            double[] arrY = new double[rows];
            double[] arrX = new double[rows];
            string[] labels = new string[rows];

            int i = 0;
            foreach (KeyValuePair<int, int> kvp in dic)
            {
                arrX[i] = Convert.ToDouble(kvp.Key);
                arrY[i] = Convert.ToDouble(kvp.Value);
                labels[i] = kvp.Key.ToString();
                i++;
            }

            LineItem myCurve = myPane.AddCurve(title, arrX, arrY, Color.Red, SymbolType.Square);
            myCurve.Symbol.Fill = new Fill(Color.Blue, Color.White, Color.Blue);//填充这个蓝条,让这蓝条看起来有3D的效果
            myCurve.Line.Width = 2;

            myPane.XAxis.Scale.TextLabels = labels; //X轴的说明文字
            myPane.XAxis.Type = AxisType.Text;
        }

小图的属性设置

 myPane.XAxis.Scale.FontSpec.Size = 30;//设置x轴的文字大小.
            myPane.YAxis.Scale.FontSpec.Size = 30;//设置y轴的文字大小.
            myPane.YAxis.MajorGrid.IsVisible = true;//设置虚线.
            myPane.Chart.Border.IsVisible = false;//图表区域的边框设置.
            myPane.Legend.IsVisible = false;//图表的注释标签显示设置项目.

小图的属性设置刻度问题

            myPane.YAxis.Scale.Min = 0;//设置只显示正半轴.
            myPane.YAxis.Scale.MajorStep = 1;//设置刻度为1;

属性分布图,From Arbean.Wu

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值