【发布时间】:2017-05-19 13:21:08
【问题描述】:
我正在使用 ZedGraph 绘制数据。 ZedGraph 非常适合绘制许多性能良好的曲线,但需要一些时间来找出技巧。 我在网上做了很多研究,但在 textlabels y 轴上没有找到任何解决方案 我有一个 Y2axis 类型线性,我在其中绘制曲线,并且我有 Yaxis type= text 我想在其中显示 textlabel 但我希望 textlabel[index] 与 y2[index] 值对齐。 为了更好地理解, 我以这种格式从数据库中读取数据: ----Col1-------- Col2 --------Col3
----A ----------122.3 -------05:22:00
----B--------- 150.3 --------06:33:22
我尝试编辑 scale.majorStep、scale.min 或 ScaleFormatEvent,但我无法将文本标签 Yaxis 与数据 Y2axis 对齐,因为 y2 轴点是可变的。 这是代码
chart2.GraphPane.CurveList["curve1"].AddPoint((XDate)(Col3[i]), Col2[i]);
myPane02m.Y2Axis.Type = ZedGraph.AxisType.Linear;
myPane02m.YAxis.Type = ZedGraph.AxisType.Text
myPane02m.YAxis.Scale.TextLabels = Col1;
myPane02m.YAxis.Scale.Min = minY;
myPane02m.YAxis.Scale.Max = maxY;
myPane02m.Y2Axis.Scale.Min = minY;
myPane02m.Y2Axis.Scale.Max = maxY;
myPane02m.YAxis.Scale.MajorStep = Offset;
myPane02m.YAxis.Scale.MinorStep = Offset;
myPane02m.Y2Axis.Scale.MajorStep = Offset;
myPane02m.Y2Axis.Scale.MinorStep = Offset;
public string MyCustomFormatter(GraphPane pane, Axis axis, double val, int index)
{
if (index < numberPoint)
{
string label = getCol1().ElementAt(index).ToString();
//MessageBox.Show(label);
return label;
//}
}
else
{
return "";
}
}
`
`
我希望 textlabel(Column1) 位于 y 轴,Col2 位于 y2 轴
如果有人找到我的问题的解决方案,那就太棒了 谢谢
【问题讨论】: