我正在尝试使用开放源代码LiveCharts来获取以编程方式创建的散点图,但是我得到的错误对象引用未设置为对象。
当我“显示”窗口时,它将在LiveCharts中中止。我是LiveCharts的新手,尤其是散点图。我可以生成依赖于XAML文件的散点图示例,但我希望以更大的灵活性以编程方式绘制各种图形。
我正在尝试使用开放源代码LiveCharts来获取以编程方式创建的散点图,但是我得到的错误对象引用未设置为对象。
using System;
using System.Collections.Generic;
using System.Windows;
using LiveCharts;
using LiveCharts.Defaults;
using LiveCharts.Wpf;
using LiveCharts.Charts;
namespace TestScatterPlot01
{
public partial class MainWindow : Window
{
public ChartValues<ObservablePoint> ValuesA { get; set; }
public MainWindow()
{
InitializeComponent();
ValuesA = new ChartValues<ObservablePoint>();
for(var i = 0; i < 5; i++)
{
double x = (double)i;
double y = (double)(i * i);
ValuesA.Add(new ObservablePoint(x, y));
}
CartesianChart theChart = new CartesianChart();
theChart.LegendLocation = LegendLocation.Bottom;
ScatterSeries s1 = new ScatterSeries();
s1.Title = "Series A";
s1.Values = ValuesA;
s1.PointGeometry = DefaultGeometries.Diamond;
theChart.AddToView(s1);
Content = theChart;
this.Show();
}
}
}
XAML文件(我必须将其重建为TestScatterPlot03。.cs文件现在具有名称空间TestScatterPlot03)。
<Window x:Class="TestScatterPlot03.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:TestScatterPlot03"
xmlns:lvc="clr-namespace:LiveCharts.Wpf;assembly=LiveCharts.Wpf"
mc:Ignorable="d"
Title="MainWindow" Height="450" Width="800">
<Grid>
</Grid>
</Window>