我试图简单地反转 Y 轴,以便该图向上而不是向下。
从 6 开始,一直到 1。
这是关于倒置图的用户文档
https://lvcharts.net/App/examples/v1/wpf/Inverted%20Series
这是我用来构建图表的示例
https://lvcharts.net/App/examples/v1/wpf/Date%20Time
用户文档指出每个实时系列都有一个反向类,对于 LineSeries 类,它只是 VerticalLineSeries,我已将 DateTime 示例更改为该类。然而图表仍然从 1 到 6 向上。我缺少什么?
public partial class MainWindow : Window
{
public Func<double, string> Formatter { get; set; }
public SeriesCollection Series { get; set; }
public MainWindow()
{
InitializeComponent();
var dayConfig = Mappers.Xy<DateModel>()
.X(dayModel => (double)dayModel.DateTime.Ticks / TimeSpan.FromHours(1).Ticks)
.Y(dayModel => dayModel.Value);
Series = new SeriesCollection(dayConfig)
{
new VerticalLineSeries
{
Values = new ChartValues<DateModel>
{
new DateModel
{
DateTime = System.DateTime.Now,
Value = 6
},
new DateModel
{
DateTime = System.DateTime.Now.AddHours(1),
Value = 5
},
new DateModel
{
DateTime = System.DateTime.Now.AddHours(2),
Value = 4
},
new DateModel
{
DateTime = System.DateTime.Now.AddHours(3),
Value = 3
},
new DateModel
{
DateTime = System.DateTime.Now.AddHours(4),
Value = 2
},
new DateModel
{
DateTime = System.DateTime.Now.AddHours(5),
Value = 1
}
},
Fill = Brushes.Transparent
}
};
Formatter = value => new System.DateTime((long)(value * TimeSpan.FromHours(1).Ticks)).ToString("t");
DataContext = this;
}
}
XAML
<Grid>
<lvc:CartesianChart Series="{Binding Series}">
<lvc:CartesianChart.AxisX>
<lvc:Axis LabelFormatter="{Binding Formatter}"></lvc:Axis>
</lvc:CartesianChart.AxisX>
</lvc:CartesianChart>
</Grid>
生成下图