简单的MsChart使用与遇到的麻烦

开发软件为VS2010 免去了安装插件之类的麻烦。

最终效果图:

饼状图:

前台设置:设置参数为:

1:Titles, 添加一个序列,在Text中设置名字.

2:Series ,添加一个序列,选择ChartType 选择Pie

后台代码如下:

  private void BindData()
        {
            DataView dv = new DataView(ChartMng.GetDs().Tables[0]);
            //Chart1.Series["Series1"].Label = "#PERCENT{P}"; //百分比
            Chart1.Series["Series1"].AxisLabel = "#VALX";    //字符串
         

            Chart1.Series["Series1"].Points.DataBind(dv, "num", "num", "LegendText=OrgName,YValues=num,ToolTip=OrgName"); //绑定数据
            Chart1.Series["Series1"].ToolTip = "#LEGENDTEXT: #VAL{C} million"; //鼠标悬浮显示信息
            Chart1.ChartAreas["ChartArea1"].Area3DStyle.Enable3D = true; //3D模式
        }

OK,饼图完成

柱状图:

前台:

1:Titles, 添加一个序列,在Text中设置名字.

2:Series ,添加一个序列,这里ChartType 选择StackedColumn,是为了字体会显示在柱子里面,而Column显示柱子上面

3:Series 序列中选择palette 中选择一个单一序列的颜色显示。

后台:

   private void BindNetData()
        {
            DataView dv = new DataView(ChartMng.GetnetlDs().Tables[0]);
            //Chart1.Series["Series1"].Label = "#PERCENT{P}"; //百分比
            //Chart3.Series["Series1"].AxisLabel = "#VALX";    //字符串
            //是否显示数值
            Chart4.Series[0].IsValueShownAsLabel = true; //显示数据


            Chart4.Series["Series1"].Points.DataBindXY(dv, "comps", dv, "num");

            //Chart3.Series["Series1"].Points.DataBind(dv, "num", "num", "LegendText=comps,YValues=num,ToolTip=comps"); //绑定数据
            Chart4.Series["Series1"].ToolTip = " #VALX"; //鼠标悬浮显示信息;这里的信息指完成;未完成
            //Chart3.ChartAreas["ChartArea1"].Area3DStyle.Enable3D = true; //3D模式
        }

这个破玩意花了我5个小时 才弄好。。。。

由于对这个东西一窍不通,先就凑合给客户演示先,后续工程再慢慢做

部署上服务器时候遇到一个问题,

Invalid temp directory in chart handler configuration [c:\TempImageFiles\].

此问题,直接在C盘建一个TempImageFiles文件夹即可。

原文地址:https://www.cnblogs.com/Jack_G/p/2318361.html