使用图表窗口形成控制来显示:
堆积柱形图
几个系列,每〜70个系列的数据点。 比方说,X:0 - 70次Y轴。
点/线
0-3系列显示,每〜20个系列数据点。 X值是0-20,所以只覆盖chartarea的一部分。 主Y轴。
我加入自定义标签为x轴。 用户可以选择显示24,48或72个数据点。 根据数据点的数量,在x轴的时间间隔被改变。
24 -> Interval 1
48 -> Interval 2
72 -> Interval 3
第一个问题
我不希望被显示在主Y轴时的点/线图是不可见的。 这是工作,但是当我添加图形,整个chartarea移动,以适应轴调整大小。 我想chartarea保持静止,只需添加轴的区域。 见图片24_Point和24_NoPoint之间的差异。
第二个问题
在轴上的间隔似乎工作,但数字缩放,为了适应向上/向下移动,即使有似乎不为任何空间问题。 有没有办法强迫方向,字体和距离,使他们不动吗? 我有固定的字体看到的一个问题是,如果在标签关闭,他们会重叠或消失。 在这种情况下,虽然,该计划将在标签和chartarea的数量大小的完全控制,所以它应该是能够控制它。 见图片24_Point和48_Point之间的差异。
相关代码
Chart.ChartAreas["Default"].AxisX.CustomLabels.Clear();
if (PlotHours == 24){
interval = 1;
} else if (PlotHours == 48){
interval = 2;
} else {
interval = 3;
}
q = 0;
for (int i = 0; i=72; i++){
if (q==0){
Chart.ChartAreas["Default"].AxisX.CustomLabels.Add((i-0.5, (i+0.5), AxisLabels[i]);
}
if (q == (interval-1)){
q = 0;
} else {
q++;
}
}
Chart.ChartAreas["Default"].AxisX.Interval = interval;
Chart.ChartAreas["Default"].AxisX.IntervalOffset = 1;
引用的图像
我没有删除图片的黑色区域,原因是为了让他们在规模。
24_Point
24_NoPoint
48_Point