Подтвердить что ты не робот

Диаграмма на С#

У меня есть простая диаграмма, и мне бы хотелось, чтобы метки на оси х поворачивались на 45 градусов. Что я делаю неправильно?

Chart c = new Chart();
c.ChartAreas.Add(new ChartArea());
c.Width = 200;
c.Height = 200;
Series mySeries = new Series();
mySeries.Points.DataBindXY(new string[] { "one", "two", "three" }, new int[] { 1, 2, 3 });
mySeries.LabelAngle = 45; // why doesn't this work?
c.Series.Add(mySeries);

Вывод:

img

Я использую материал для составления диаграмм из System.Web.UI.DataVisualization.Charting.

4b9b3361

Ответ 1

В документации указано, что Series.LabelAngle устанавливает угол метки метки точки, который (я думаю) является меткой над столбцом диаграммы.

Чтобы установить угол меток оси, попробуйте следующее:

var c = Chart1;
c.ChartAreas.Add(new ChartArea());
c.Width = 200;
c.Height = 200;
Series mySeries = new Series();
mySeries.Points.DataBindXY(new string[] { "one", "two", "three" }, new int[] { 1, 2, 3 });
//mySeries.LabelAngle = -45; // why doesn't this work?
c.Series.Add(mySeries);
c.ChartAreas[0].AxisX.LabelStyle.Angle = 45; // this works

Ответ 2

Вот как я обычно поворачиваю метки X Axis.

 ChartArea area = new ChartArea();
 area.AxisX.IsLabelAutoFit = true;
 area.AxisX.LabelAutoFitStyle = LabelAutoFitStyles.LabelsAngleStep30;
 area.AxisX.LabelStyle.Enabled = true;

Результаты

enter image description here

Ключевое свойство/строка для просмотра выше - это "LabelAutoFitStyle".

Ответ 3

Мне нужны эти строки, чтобы заставить его работать:

chartarea.AxisX.LabelStyle.Angle = -90;
chartarea.AxisX.IntervalAutoMode = IntervalAutoMode.VariableCount;
chartarea.AxisX.IsLabelAutoFit = false;