【问题标题】:OxyPlot: how to hide left and top axis linesOxyPlot:如何隐藏左侧和顶部轴线
【发布时间】:2016-08-11 12:07:31
【问题描述】:

我在 Xamarin.iOS 项目中使用 Oxyplot 来绘制条形图

这就是我的情节目前的样子

这里我需要隐藏右轴和上轴

我试过了:

model.Axes.Add(new LinearAxis()
{
    Position = AxisPosition.Right,
    IsAxisVisible = false
});
model.Axes.Add(new LinearAxis()
{
    Position = AxisPosition.Top,
    IsAxisVisible = false
});

但没有效果..这是我的完整代码

public MyClass()
{
    var model = new PlotModel { Title = "ColumnSeries" };
    // A ColumnSeries requires a CategoryAxis on the x-axis.

    model.Axes.Add(new CategoryAxis()
    {
        Position = AxisPosition.Bottom,
        MinorTickSize = 0,
        //MajorGridlineStyle = LineStyle.Solid,
        MinorGridlineStyle = LineStyle.Solid,
    });

    model.Axes.Add(new LinearAxis()
    {
        Position = AxisPosition.Left,
        MinorTickSize = 0,
        MajorGridlineStyle = LineStyle.Solid,
        MinorGridlineStyle = LineStyle.Solid,
        Minimum = 0,
        Maximum = 400
    });
    model.Axes.Add(new LinearAxis()
    {
        Position = AxisPosition.Right,
        IsAxisVisible = false
    });
    model.Axes.Add(new LinearAxis()
    {
        Position = AxisPosition.Top,
        IsAxisVisible = false
    });

    var series = new ColumnSeries();
    series.Items.Add(new ColumnItem() { Value = 200});
    series.Items.Add(new ColumnItem(200));
    series.Items.Add(new ColumnItem(300));
    series.Items.Add(new ColumnItem(100));
    series.Items.Add(new ColumnItem(200));
    series.Items.Add(new ColumnItem(100));
    series.Items.Add(new ColumnItem(130));

    model.Series.Add(series);

    this.MyModel = model;
}

我该怎么做?任何帮助表示赞赏....

编辑:

另外,在我上面的图表中,为什么没有显示 y 标签。如何更改下面的 x 标签...是否可以在此图表中画线,如下所示?

这就是我想要的最终图表的样子:

【问题讨论】:

    标签: c# xamarin.ios oxyplot


    【解决方案1】:

    问题是你现在看到的黑色边框不是坐标轴,是绘图区边框,所以你要在plotmodel中修改这个属性:

    model.PlotAreaBorderColor = OxyColors.Transparent;
    

    然后,您必须将 AxisLineStyle 添加到要绘制的轴(左和下),如下所示:

    model.Axes.Add(new LinearAxis()
    {
        AxislineStyle = LineStyle.Solid,
    
        Position = AxisPosition.Left,
        MinorTickSize = 0,
        MajorGridlineStyle = LineStyle.Solid,
        MinorGridlineStyle = LineStyle.Solid,
        Minimum = 0,
        Maximum = 400
    });
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-06
    • 2011-03-27
    • 1970-01-01
    • 2019-08-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多