Как подписать значения оси X, на компоненте Chart?



@whatislov

Доброго времени суток! Вопрос такой, создаю график с помощью компонента Chart, данные, отображаемые на графике(сплайн и маркеры) вывожу из DataGridView, с этим проблем нет. Но появилась надобность подписать значения оси X, подписями из DataGridView, а не стандартными цифрами от 0 до n. Пример привел ниже, что заменить чем.
62911ce8234d5526067311.jpeg
Листинг построения графика:

for (int i = 0; i < dataGridView1.Rows.Count; i++)//построение сплайна
            {
                int x = Convert.ToInt32(dataGridView1.Rows[i].Cells[2].Value);//отображение сплайна на графике
                chart1.Series[0].Points.AddXY(i, x);
           }
            for (int i = 0; i < dataGridView1.Rows.Count; i++)//построение точек
            {
                int x = Convert.ToInt32(dataGridView1.Rows[i].Cells[2].Value);// отображение точек на графике
                chart1.Series[1].Points.AddXY(i, x);
            }
            chart1.ChartAreas[0].AxisX.Title = "Марка машины";
            chart1.ChartAreas[0].AxisY.Title = "Лошадиные силы";


Решения вопроса 1



@whatislov Автор вопроса

Приветствую! Кому интересно, смог так решить вопрос.

//вывод марки авто на ось X
            string[] autos = { "Chevrolet", "BMW", "Hyundai", "Citroen", "Hyundai", "Ford", "Honda", "Daewoo", "Chevrolet", "Honda", "Ford", "Volvo", "Chery", "BMW", "Geely" };
            int startOffset = -2;
            int endOffset = 2;
            foreach (string auto in autos)
            {
                CustomLabel autoLabel = new CustomLabel(startOffset, endOffset, auto, 0, LabelMarkStyle.None);
                chart1.ChartAreas[0].AxisX.CustomLabels.Add(autoLabel);
                startOffset = startOffset + 1;
                endOffset = endOffset + 1;
            }
            chart1.ChartAreas[0].AxisX.LabelStyle.Angle = -90;


Ответы на вопрос 0

Добавить комментарий

Ваш адрес email не будет опубликован.