如何更改OxyPlot的Y轴字符串格式?

4
有人能告诉我如何更改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的示例。顺便说一下,示例图表在网站上,所以你可以找到你要查找的功能,然后查看该示例:http://oxyplot.org/ExampleBrowser/ 在“轴示例”标题下面的十分之一处是“LabelFormatter”。 - Steve
不,我完全不知道那些例子的存在。我只是根据谷歌搜索的结果进行了尝试。我会去看看的。现在感觉有点傻... 谢谢! - Hooplator15
我也经历过同样的事情。把它加入书签吧。我相信这些示例的代码包含在OxyPlot源代码中,所以如果你愿意,可以自己构建和运行它,但我认为没有太大必要。通常,找到一个类似的示例,浏览一下代码,然后调整你的代码。顺便说一句,如果这有助于解决你的问题,请告诉我,我会将其移动到答案中。 - Steve
@Steve,你指向的网站已经不存在了。你需要下载Github代码并自己编译ExampleBrowser(除非其他地方有可用的)。 - lnjuanj
2个回答

7
这是我之前用来格式化 oxy-plot 上 x 轴的示例:

这是我之前用来格式化 oxy-plot 上 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);

0
        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,等等。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接