我有連續心臟跳動的時間數據(以毫秒爲單位),我正在嘗試製作它們的動態圖表。所以在XAxis上,我的XDate變量增加了.AddMilliseconds(heart_beat_time)
,YAxis增加了heart_beat_time
。更改ZedGraph中的軸類型
當我使用AxisType.Date
它很不錯。我可以更改Min
,Max
和其他相關值,但是當我更改爲AxisType.DateAsOrdinal
時,我看不到點或標籤。在一些調試過程中,Zedgraph已經顯示了點和標籤,但是連續點之間有很大的差距。如何控制DateAsOrdinal
Min,Max,MajorStep等?有一個答案Format DateAsOrdinal xAxis labels in ZedGraph,但它不適合我。
有兩個原因,我想,使其工作:
序似乎更快(因爲我得到了近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;
我想我已經解決了這個問題。 – levy 2012-04-14 14:54:38
**對不起,在線時間限制:/ ** 'DateAsOrdinal'保留屏幕上的點數,而不是按照Min和Max的時間段 所以你必須設置'Min = 0 '和'Max = numberOfPoints'。 「MajorStep」和「MinorStep」也是一樣 - 它是抽搐之間的點數。 我認爲如果您不知道您要放入圖表中的數據會導致問題 - 它會因規模而變得不可讀。 – levy 2012-04-14 15:00:20