none
请问mschart的数据绑定,如何把Y轴绑定字符类型呢,X轴日期类型 RRS feed

  • 问题

  • 其实我是想在chart上做曲线图形,把Y轴 绑定字符的类型,X轴绑定日期类型,要是这样绑定的话,会变成一条水平直线了。

    比如数据:

    地址    数据     日期  

    中国    10      2012-01-01

    日本      30    2012-12-05

    美国   20       2012-03-01

    Y轴绑定 地址 ,X轴绑定 日期 。请问如何才可以用曲线图 展示数据呢?

    2012年3月29日 9:34

答案

全部回复

  • HI,dreaminglove

    MS为了方便开发者快速学习使用MSChart 所以官方做了完整的演示。演示分为ASP.NET和WINFORM两种。

    下载地址:http://archive.msdn.microsoft.com/mschart/Release/ProjectReleases.aspx?ReleaseId=4418

    下载之后用VS打开, 可能由于编码问题无法直接调试。出错的地方多半是字符串,只需要简单修改就可以调试了。

    如果还有问题请直接回复,我将会提供代码。


    communication change the world

    2012年3月30日 0:14
  • 谢谢你的回答,其实我用这个例子用过,但是不能实现Y轴绑定字符型。

    名称    数据     日期  

    中国    10      2012-01-01

    日本    30      2012-12-05

    美国    20      2012-03-01

    但是我是想动态生成曲线图  如:Y轴绑定“ 地址”,  X轴绑定 “日期”,曲线上的节点显示 “数据”。

    效果图如下修改:  是把下面的Y轴用 “名称” 显示。


    2012年3月30日 2:49
  • 修改那样就可以一目了然,看得出 :某某地方在某个日期的数据。
    2012年3月30日 2:51
  • 每个节点都要跟Y轴一一对应。
    2012年3月30日 2:54
  • (x,y)确定平面直角坐标系上一点,(x,y,z)确定空间直角坐坐标系上一点。

    我大概理解你的意思Y轴的确不能绑定String类型的数据。可不可以X轴绑定日期,Y轴绑定数据 曲线上显示时间即((x,y),z)

    chart1.Series["Series1"].ChartType =
                    System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Spline;
                int[] data = new int[] { 10, 20, 30 };
                string[] date = new string[] { "2012-01-01", "2012-02-05", "2012-03-01" };
                string[] country = new string[]{ "中国", "日本", "美国" };
                chart1.Series["Series1"].IsValueShownAsLabel = true;
                chart1.Series["Series1"].Points.DataBindXY(date, data);
                for (int i = 0; i < country.Length; i++)
                {
                    chart1.Series["Series1"].Points[i].Label = country[i];
                }
                chart1.DataBind();

    不知道我的意思对不对


    communication change the world

    2012年3月30日 6:31
  • 你的做的那个不是我想要的,我也会做,

    我的意思是说 Y轴能不能显示 country,曲线 的节点上显示 data     ,X轴显示 date

    string[] country = new string[]{ "中国", "日本", "美国" };在Y轴显示

    意思是把chart1.Series["Series1"].Points.DataBindXY(date, data);

    改成: chart1.Series["Series1"].Points.DataBindXY(date,country ); 这样

    请问这样能不能实现呢?

    2012年3月30日 7:16
  • 类似这样的效果,(Y轴 是 国家,  X轴 是 日期  ,线上的节点 就是  数据)

    2012年3月30日 7:25
  • 你的做法不得,我要的效果是这个

    2012年3月30日 8:38
  • HI,dreaminglove

    很抱歉,因为我的错误理解耽误了您的太多的时间。

    Chart的Y轴的值类型从Series.YValueType 获得或设置,关于该属性更多:

    http://msdn.microsoft.com/zh-cn/library/system.web.ui.datavisualization.charting.series.yvaluetype.aspx 

    获取的该属性的值是一个枚举类型 ChartValueType 关于该枚举类型更多:http://msdn.microsoft.com/zh-cn/library/system.web.ui.datavisualization.charting.chartvaluetype.aspx

     抱歉没有String类型。恕鄙人无能为力。


    communication change the world

    2012年3月30日 10:19
  • 你的意思是说没办法 那样做咯?,微软高手开发出来的chart 也不懂做啊?
    2012年3月31日 6:29
  • HI,dreaminglove

    (“string”,“string”)这样不能确定平面直角坐标系上的一点。

    你的应用更类似一个表格。或许其他控件可以帮助你。


    communication change the world

    2012年3月31日 8:10