1

How to set the Y-axis interval exponentially in column series?

new ColumnSeries
{
     Fill = new SolidColorBrush(Color.FromRgb(30,130,173)),
     Width = 100,
     MaxColumnWidth = 100,
     Values = new ChartValues<double> {500,30,10},
     DataLabels = true,
     LabelPoint  = point => point.Y +"",
     FontSize = 20
}
4

1 回答 1

0

您可以使用对数刻度配置 y 轴 - 在 Live Charts 站点https://lvcharts.net/App/examples/v1/wpf/Logarithmic%20Scale上有如何执行此操作的说明

这是一个适用于列系列的示例:

public SeriesCollection SeriesCollection { get; set; }

public MainWindow()
{
    InitializeComponent();

    var mapper = Mappers.Xy<double>()
                    .X((value, index) => index)
                    .Y((value, index) => Math.Log(value, 10));

    SeriesCollection = new SeriesCollection(mapper)
    {
        new ColumnSeries
        {
            Values = new ChartValues<double>{500,30,10}
        }
    };

    DataContext = this;
}

和 XAML:

<Grid>
    <lvc:CartesianChart Series="{Binding SeriesCollection}">
        <lvc:CartesianChart.AxisY>
            <lvc:LogarithmicAxis Base="10" />
        </lvc:CartesianChart.AxisY>
    </lvc:CartesianChart>
</Grid>

具有对数刻度的列系列

于 2017-11-07T17:34:07.027 回答