我有这些XY值:
Series S1 = new Series() S1.Points.AddXY(9,25); S1.Points.AddXY(10,35); S1.Points.AddXY(11,15); chart1.Series.Add(S1);
但我需要在图中显示X值,如下所示:
X = “9-10”
X = “10-11”
X = “11-12”
我怎样才能做到这一点?
到目前为止,这是我发现的:
这是代码:
private void Form1_Shown(object sender,EventArgs e) { chart1.ChartAreas[0].AxisX.Minimum = 7; chart1.ChartAreas[0].AxisX.Maximum = 15; Series S1 = new Series(); S1.Points.AddXY(9,25); S1.Points.AddXY(10,35); S1.Points.AddXY(11,15); chart1.Series.Add(S1); chart1.Series[0].Points[0].AxisLabel = "9-10"; chart1.Series[0].Points[1].AxisLabel = "10-11"; chart1.Series[0].Points[2].AxisLabel = "11-12";
你可以看到我使用数字,并为X轴标签设置文本,但我只能为DataPoints值做这些,我需要它用于整个值范围.
有什么想法吗?
解决方法
以下是sipla的答案:
string[] range = new string[10]; private void Form1_Shown(object sender,EventArgs e) { chart1.ChartAreas[0].AxisX.Minimum = 7; chart1.ChartAreas[0].AxisX.Maximum = 16; range[0] = ""; range[1] = "7-8"; range[2] = "8-9"; range[3] = "9-10"; range[4] = "10-11"; range[5] = "11-12"; range[6] = "12-1"; range[7] = "1-2"; range[8] = "2-3"; range[9] = ""; Series S1 = new Series(); S1.Points.AddXY(9,15); chart1.Series.Add(S1); } int count; private void chart1_Customize(object sender,EventArgs e) { count = 0; foreach (CustomLabel lbl in chart1.ChartAreas[0].AxisX.CustomLabels) { lbl.Text = range[count]; count++; } }