如何在 WinForms 图表中创建一条从 (0,0) 到 (0,n) 的线?

How to create a line from (0,0) to (0,n) in WinForms chart?

我尝试使用 Winforms 图表绘制一条从 (0,0) 到 (0,3) 的线,但它正在绘制一条从 (1,0) 到 (2,3) 的线。第二点的任何其他 Y 值都会发生同样的事情。

public partial class Form1 : Form
{
    private Series series = new Series("series")
    {
        ChartType = SeriesChartType.Line,
        Color = Color.Red
    };
    public Form1()
    {
        InitializeComponent();
        series.Points.AddXY(0, 0);
        series.Points.AddXY(0, 3);
        chart1.Series.Add(series);
        chart1.ChartAreas[0].AxisX.Minimum = -2;
        chart1.ChartAreas[0].AxisX.Maximum = 5;
        chart1.ChartAreas[0].AxisY.Minimum = -2;
        chart1.ChartAreas[0].AxisX.Maximum = 5;
        chart1.ChartAreas[0].AxisX.Interval = 1;
        chart1.ChartAreas[0].AxisY.Interval = 1;

    }
}

当我尝试创建从 (0,0) 到 (2,3) 的直线时,一切正常。

如何解决,是什么原因?

据我所知,当所有 X 值都是 0 时,图表不考虑 0 的值,因此开始将您的系列视为缩进索引的数据点是您的 X 值。

添加至少有 1 个非 0 数据点的第二个系列 X,将解决问题。

public partial class Form1 : Form
{
    private Series series = new Series("series")
    {
        ChartType = SeriesChartType.Line,
        Color = Color.Red
    };
    private Series correction = new Series("correction")
    {
        ChartType = SeriesChartType.Line,
        Color = Color.Transparent,
        IsVisibleInLegend = false,
        IsValueShownAsLabel = false,
    };
    public Form1()
    {
        InitializeComponent();

        series.Points.AddXY(0, 0);
        series.Points.AddXY(0, 3);

        chart1.Series.Add(series);

        correction.Points.AddXY(1, 1);
        chart1.Series.Add(correction);

    }
}