请教C# MsChart图表的一个问题?
上面这个图表,我想将标签显示X值,怎么设置都不对,要么就显示为0,要么就只能显示Y的值。另外还有一个问题:我如果在这一个图表上面把右侧的"Series1"显示为每一个数据...
上面这个图表,我想将标签显示X值,怎么设置都不对,要么就显示为0,要么就只能显示Y的值。另外还有一个问题:我如果在这一个图表上面把右侧的"Series1"显示为每一个数据点对应的X值呢?下面是我的代码: string Time = DateTime.Now.ToShortTimeString(); for (int i = 0; i < treeView.SelectedNode.Nodes.Count; i++) { DataTable dt = new DataTable(); chart1.Tag = treeView.SelectedNode.Nodes[i].Tag; GetEgergyDetail((int)sort.CorpId, (int)treeView.SelectedNode.Nodes[i].Tag, (int)cmbKind.SelectedIndex, dt); string Amount = "0"; if (dt.Rows.Count > 0) { Amount = dt.Rows[0]["Amount"].ToString(); } string NodesX = "表名:" + treeView.SelectedNode.Nodes[i].Text + "\n" + "当前读数:" + Amount + "\n" + "运行状态:正常\n" + "报警信息:无"; chart1.Series["Series1"].Points.AddXY(NodesX, Amount); }其实我是想将:Time这个参数显示到X上面去,我知道是可以的:将这句改为:chart1.Series["Series1"].Points.AddXY(Time, Amount);就可以,但是我如何将NodesX 这个参数显示到右侧的"Series1"这个位置去,并每一个都显示出来。或者是将NodesX 这个参数显示到圆点标签的那个位置去。。。
这里有DEMO提供下载,可供测试。谢谢VS2010版
http://pan.baidu.com/s/1hqf50Ks 展开
这里有DEMO提供下载,可供测试。谢谢VS2010版
http://pan.baidu.com/s/1hqf50Ks 展开
1个回答
展开全部
对Chart不熟悉,不过刚刚下载来试了一下,最终发现是添加的时候,要转换成double才会有X的数值。如下
private void btnBegin_Click(object sender, EventArgs e)
{
chart1.Series[0].Label = "X - #VALX , Y - #VALY";
chart1.Series[0].IsValueShownAsLabel = true;
Random random = new Random();
double Time =Convert.ToDouble( DateTime.Now.Second.ToString());
chart1.Series[0].Points.AddXY(Time,Convert.ToDouble( random.Next(1000, 3000)));
}
追问
X为double的时候值可以显示,这个我也试过。但是我的X值是string,并且每一个数据标签的string值不一样。你再帮我看看有不有办法处理。
你将我上面那个代码弄上去试,就知道了。。
追答
那你为什么要显示为string,后台可以设置x轴的显示方式,值与显示可以不一样。
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询