我相信有办法做到这一点。我一直在寻找一段时间,只是没有找到。我在图表中定义了主要和次要刻度线,但 Y 轴左侧的值与图表中的线条(每 20 条)不匹配。如何使值与行匹配?
编辑 以下是创建值的代码行。这些是通过编辑 ChartAreas 集合在 Designer 中创建的。
chartArea1.AxisX.MajorGrid.Interval = 20D;
chartArea1.AxisX.MajorTickMark.Interval = 10D;
chartArea1.AxisX.Maximum = 50D;
chartArea1.AxisX.Minimum = 0D;
chartArea1.AxisX2.Maximum = 50D;
chartArea1.AxisX2.Minimum = 0D;
chartArea1.AxisY.MajorGrid.Interval = 20D;
chartArea1.AxisY.Maximum = 420D;
chartArea1.AxisY.Minimum = 300D;
chartArea1.AxisY.MinorGrid.Interval = 10D;
chartArea1.AxisY2.Maximum = 420D;
chartArea1.AxisY2.Minimum = 300D;
chartArea1.Name = "ChartArea1";
this.chart1.ChartAreas.Add(chartArea1);
legend1.Name = "Legend1";
this.chart1.Legends.Add(legend1);
this.chart1.Location = new System.Drawing.Point(12, 27);
this.chart1.Name = "chart1";
series1.ChartArea = "ChartArea1";
series1.ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Point;
series1.IsValueShownAsLabel = true;
series1.Legend = "Legend1";
series1.Name = "TempHistory";
series2.ChartArea = "ChartArea1";
series2.ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line;
series2.Legend = "Legend1";
series2.Name = "LowerLimit";
series3.ChartArea = "ChartArea1";
series3.ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line;
series3.Legend = "Legend1";
series3.Name = "UpperLimit";
this.chart1.Series.Add(series1);
this.chart1.Series.Add(series2);
this.chart1.Series.Add(series3);
this.chart1.Size = new System.Drawing.Size(1326, 186);
this.chart1.TabIndex = 53;
this.chart1.Text = "chart1";
最佳答案
chartArea1.AxisY.Interval 需要等于 chartArea1.AxisX.MajorGrid.Interval
关于c# - 在 Microsoft.Chart 中使 YAxis 匹配刻度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56010837/