如何更改 OxyPlot Y 轴字符串格式?
Posted
技术标签:
【中文标题】如何更改 OxyPlot Y 轴字符串格式?【英文标题】:How to change OxyPlot Y-Axis string format? 【发布时间】:2014-09-15 02:27:54 【问题描述】:谁能告诉我如何更改Y轴字符串格式??
我有想要添加百分号的 Y 轴百分比。
我正在使用 OxyPlot 在 wpf 中生成图表。
这是我的尝试,但它不起作用:
Func<double, string> formatFunc = (x) => string.Format("000.00%", x);
formatFunc = new Func<double,string>("0");
// Add the plot to the window
line.YAxis.LabelFormatter = formatFunc;
这会产生空引用错误。
谢谢!
【问题讨论】:
你看过这些例子吗?有一个专门针对LabelFormatter
。仅供参考,示例图表位于网站上,因此您可以找到您正在寻找的功能,然后查看该示例:oxyplot.org/ExampleBrowser 在“轴示例”标题下的大约十分之一处,是“LabelFormatter”。
不,我不知道这些例子存在。我刚刚离开谷歌搜索。我去看看。现在肯定觉得自己很笨...谢谢!
不,我也经历过同样的事情。书签。我相信这些示例的代码包含在 OxyPlot 源代码中,因此您可以根据需要自行构建和运行它,但我认为没有太大必要。通常,找一个做类似事情的例子,浏览代码,然后调整你的。顺便说一句,如果这有助于解决您的问题,请告诉我,我会将其转为答案。
@Steve 您指向的网站已不存在。您必须下载 github 代码并自己编译 ExampleBrowser(除非它在其他地方可用)。
【参考方案1】:
这是我之前用来在氧绘图上格式化 x 轴的示例:
var xAxis = new DateTimeAxis
Position = AxisPosition.Bottom,
StringFormat = "dd/MM/yyyy",
Title = "End of Day",
IntervalLength = 75,
MinorIntervalType = DateTimeIntervalType.Days,
IntervalType = DateTimeIntervalType.Days,
MajorGridlineStyle = LineStyle.Solid,
MinorGridlineStyle = LineStyle.None,
;
Plot = new PlotModel();
Plot.Axes.Add(xAxis);
【讨论】:
【参考方案2】: this._PlotModel.Axes.Add( new LinearAxis
Position = AxisPosition.Left,
Minimum = 0.025,
Maximum = 0.205,
StringFormat = "0.00%",
MajorStep = 0.005
);
- 添加百分比作为比率:20.5% --> 0.205、0.5% --> 0.005 等。
【讨论】:
以上是关于如何更改 OxyPlot Y 轴字符串格式?的主要内容,如果未能解决你的问题,请参考以下文章