我正在使用LiveChart
并加载一些数据。
<wpf:CartesianChart Name="LineChart" LegendLocation="top" >
<wpf:CartesianChart.AxisY>
<wpf:Axis Title="Sales" ></wpf:Axis>
</wpf:CartesianChart.AxisY>
<wpf:CartesianChart.AxisX>
<wpf:AxesCollection>
<wpf:Axis Labels="{Binding Labels}">
<wpf:Axis.Separator>
<wpf:Separator Step="1" />
</wpf:Axis.Separator>
</wpf:Axis>
</wpf:AxesCollection>
</wpf:CartesianChart.AxisX>
在后端时,我已经定义了标签。
public DailySalesProgressLineChart()
{
InitializeComponent();
Labels = new[]
{
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
26, 27, 28, 29, 30
};
DataContext = this;
LoadLineChart();
}
SeriesCollection seriesCollection = new SeriesCollection();
public int[] Labels { get; set; }
但是我在Labels
上没有看到全部30 x-axis
。我已经提到了这些解决方案,但仍然存在相同的问题。
Livecharts not displaying Label on x axis in WPF
https://github.com/Live-Charts/Live-Charts/issues/481
答案 0 :(得分:1)
我认为SeriesCollection未绑定到您的图表。希望您将其绑定到LoadLineChart()方法内部的代码中。
由于没有为LoadLineChart()方法提供代码,所以我只是尝试如下将一些值随机分配给seriesCollection对象,
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.15.26726\ATLMFC\lib\x64\User32.Lib
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.15.26726\lib\x64\User32.Lib
C:\Program Files (x86)\Windows Kits\10\lib\10.0.17763.0\ucrt\x64\User32.Lib
C:\Program Files (x86)\Windows Kits\10\lib\10.0.17134.0\um\x64\User32.Lib
User32.Lib
我想您可能缺少将seriesCollection绑定到LineChart的想法。但是,如果这样做仍然有其他问题,请更新您的评论。
注意:-我尝试了一些条形图,您可以尝试使用图表代码。
希望这对您有所帮助:)