【发布时间】:2013-07-16 19:21:55
【问题描述】:
我有一张图表,里面有 8 个系列。每个系列具有相同的数据速率;这是来自仪器的 75 Hz 样本。我正在显示最近 10 秒的数据,并且一直在更新。
我拥有的一些东西:
定义:
this.chart1.ChartAreas[0].AxisX.Minimum = 1;
this.chart1.ChartAreas[0].AxisX.Maximum = 751;
//this.chart1.Series[0].Lable = "X = (#VALX - 1)/75"; // ineffective, tried various syntax
新数据插入的管理(仅显示一个通道示例):
ch01_series.Points.AddY(dCh01); // ch01_series is "Series", dCh01 is double
if(ch01_series.Points.Count > 751)
{
ch01_series.Points.RemoveAt(0);
}
主要问题是我无法弄清楚如何标记我的 X 轴以显示 0-10。
我希望看到 11 条垂直网格线,分别标记为“0、1、2、3、4、5、6、7、8、9、10”;现在,图表自我标签并没有给我一个终点,它显示“1、201、401和601”。 (写这个我现在正在考虑找到一种方法来控制网格线的数量并将检查。)
关于 (1) 如何根据需要显示我的标签,以及 (2) 如何自定义我的网格线以便我可以看到其中的 11 个而不是 MS Chart 选择绘制的 4 个的任何建议。对于初学者,如果我可以按预期标记 X 轴而不考虑网格线,我相信我会很好,并且可以删除网格线
一些更新:
我想出了如何设置网格线间隔:
this.chart1.ChartAreas[0].AxisX.MajorGrid.Interval = 75;
并设置X轴间隔:
this.chart1.ChartAreas[0].AxisX.Interval = 75;
剩下的就是如何让自定义标签或某种形式的标签显示 0-10 而不是“1、76、151、226、301、376、451、526、601、676 和 751 ”。公式是 (Xvalue - 1)/75,但是标签语法没有接受我的尝试。
【问题讨论】:
标签: c# charts axis-labels