我有连续心跳的时间数据(以毫秒为单位),我正在尝试制作动态图表。因此,在XAxis上,我的XDate变量增加了.AddMilliseconds(heart_beat_time)
和YAxis heart_beat_time
。
当我使用AxisType.Date
时,它非常好。我可以更改Min
,Max
和其他相关值,但当我更改为AxisType.DateAsOrdinal
时,我无法看到点或标签。在一些调试过程中,它已经显示Zedgraph确实绘制了点和标签,但是连续的之间存在很大的差距。
如何控制DateAsOrdinal
Min,Max,MajorStep等?有一个答案Format DateAsOrdinal xAxis labels in ZedGraph,但它对我不起作用。
我想让它发挥作用有两个原因:
Ordinal似乎更快(因为我得到了近10万分)
当我自动滚动图表时,AxisType.Date
显示标记下的标签
我的代码:
myPane.XAxis.Type = AxisType.DateAsOrdinal;
myPane.XAxis.Scale.MajorStepAuto = false;
myPane.XAxis.Scale.MinorStepAuto = false;
myPane.XAxis.Scale.MajorUnit = DateUnit.Minute;
myPane.XAxis.Scale.MinorUnit = DateUnit.Minute;
myPane.XAxis.Scale.Format = "HH:mm:ss";
myPane.XAxis.Scale.Min = Min;
myPane.XAxis.Scale.Max = Max;
myPane.XAxis.Scale.MinorStep = minor;
myPane.XAxis.Scale.MajorStep = major;
myPane.XAxis.Scale.BaseTic = new XDate(1999, 1, 1, 0, 0, 0, 0);
myPane.YAxis.Scale.Min = min_rr;
myPane.YAxis.Scale.Max = max_rr;
,其中
int min_rr = 100;
int max_rr = 2500;
XDate Min = new XDate(1999, 1, 1, 0, 0, 0, 0);
XDate Max = new XDate(1999, 1, 1, 1, 0, 0, 0);
int minor = 5;
int major = 10;
答案 0 :(得分:0)
使用AxisType.DateAsOrdinal
时,我遇到同样的问题(XAxis上没有图表或标签)。
我通过省略代码行myPane.XAxis.Scale.Min=???
和Max=???
来解决问题。
这给了我一个没有间隙的漂亮图表。
但是现在我的MousePositionValues
中的MouseMoveEvent
功能出现了问题。