2013-03-28 3 views
2

Это то, что я в настоящее время:Неровности (пользовательские) интервалы на диаграмме

Problem Statement

Что мне нужно, чтобы иметь следующие неравные интервалы (вертикальные линии & х-оси этикетки):

1) 1 (i.e. must not cross at 0) 
2) 1.5 
3) 2.5 
4) 3.5 
5) 4 

Есть ли способ сделать это? Даже если это kludge с дополнительной серией или чем-то, хотя я надеюсь, что это что-то связано с IntervalOffset, но я не могу заставить его делать то, что я хочу.

В настоящее время я просто:

chartarea.AxisX.Maximum = 4; 
chartarea.AxisX.Minimum = 1; 
chartarea.AxisX.Interval = 1; 

ответ

1

Это то, что требовалось:

// set the max & min, with an interval of 1 which is offset by 0.5 
// this gives the correct start (1), and three .5 intervals 
// however, it doesn't give the closing vertical line at 4 
chartarea.AxisX.Maximum = 4; 
chartarea.AxisX.Minimum = 1; 
chartarea.AxisX.Interval = 1; 
chartarea.AxisX.IntervalOffset = 0.5; 

// enable a secondary y axis for the line at 4 
chartarea.AxisY2.Enabled = AxisEnabled.True; 
// switch of all tickmarks & gridlines 
chartarea.AxisY2.MajorTickMark.Enabled = false; 
chartarea.AxisY2.MinorTickMark.Enabled = false; 
chartarea.AxisY2.MajorGrid.Enabled = false; 
chartarea.AxisY2.MinorGrid.Enabled = false; 
chartarea.AxisY2.LabelStyle.Enabled = false; 
// set the correct colour & line style 
chartarea.AxisY2.LineColor = Color.FromArgb(160, 160, 160); 
chartarea.AxisY2.LineDashStyle = ChartDashStyle.Dash; 

// add custom labels for the 5 points/lines 
chartarea.AxisX.CustomLabels.Add(0.9, 1.1, "1"); 
chartarea.AxisX.CustomLabels.Add(1.4, 1.6, "1.5"); 
chartarea.AxisX.CustomLabels.Add(2.4, 2.6, "2.5"); 
chartarea.AxisX.CustomLabels.Add(3.4, 3.6, "3.5"); 
chartarea.AxisX.CustomLabels.Add(3.9, 4.1, "4"); 

И вуаля: (хотя мои данные изменились)

enter image description here

Смежные вопросы