LiveCharts是为用户设计的,所有内容都是自动更新和动画化的,库只有在它认为有必要时才会更新,而不是每次数据更改时,添加/删除序列,或者添加/删除图表本身将更新的值时,除了您的业务之外,您真的不需要担心任何事情,让LiveCharts来处理图表。
起始示例
有许多类型已经准备好绘图,您可以在“类型和配置”部分了解更多信息,在这个简短的示例中,我们正在绘制double values.
.CS
SeriesCollection = new SeriesCollection
{
new LineSeries
{
Values = new ChartValues<double> { 3, 5, 7, 4 }
},
new ColumnSeries
{
Values = new ChartValues<decimal> { 5, 6, 2, 7 }
}
};
.XAML
<lvc:CartesianChart Series="{Binding SeriesCollection}" />
这不是很简单吗?这就是您所需要的,现在每当您向SeriesCollection实例添加/删除一个Series或在每个Series中添加/删除一个值时,图表都会自动更新和动画。
下一张图片将指导您更加熟悉LiveCharts组件。
所有Series都有笔划和填充属性。
您只可以为特定系列设置填充和笔画,如果没有,库将根据主题确定颜色。
<lvc:LineSeries Stroke="Red" Fill="Blue /">
mySeries.Stroke = System.Windows.Media.Brushes.Red;
mySeries.Fill = System.Windows.Media.Brushes.Blue;
此外,设置Series.Viability(将定义绘制的形状可见性)、Panel.ZIndex(绘制形状z-index属性)、Series.StrokeDashArray(虚线笔画)属性将绑定到绘制的形状,例如:
<lvc:LineSeries Visibility="Hidden" StrokeDashArray="2" Panel.Zindex="3" / >
或者用代码设置:
mySeries.Visibility = System.Windows.Visibility.Hidden;
mySeries.StrokeDashArray = new System.Windows.Media.DoubleCollection {2};
System.Windows.Controls.Panel.SetZIndex(mySeries, 3);
自定义组件
如果有必要,您也可以定义您自己的工具提示或图例控件,下面是一篇关于它的文章。
Legends
您可以将图例放置在底部、顶部、右侧或左侧,只需在所需位置设置Chart.LegendPosition属性即可。
myChart.LegendLocation = LegendLocation.Right;