Имя: Пароль:
IT
 
Вопрос по C#, компонент Chart. Не получается использовать метод AddXY.
0 megalira
 
04.02.15
22:09
Добрый день. У меня программа рисует биржевой график (свечки), каждую свечку задаю так:
         /// <summary>
        /// Добавить свечу в график
        /// </summary>
        /// <param name="open">Цена открытия</param>
        /// <param name="high">Максимум</param>
        /// <param name="low">Минимум</param>
        /// <param name="close">Цена закрытия</param>
        /// <param name="x">Координата x</param>
        private void addBar(double open, double high, double low, double close, DateTime x)
        {
            double[] mas1 = { high, low, open, close };
            SourceChart.Series[0].Points.Add(mas1);
        }


Все бы хорошо, но внизу подписи в виде цифр 1,2,3 и т.д. а хотелось бы даты. Подскажите пожалуйста, как это сделать?
Если делаю

             double[] mas1 = { high, low, open, close };
            //SourceChart.Series[0].Points.Add(mas1);
            SourceChart.Series[0].Points.AddXY(x, mas1);


выдаёт исключение

"Точки данных ряда не поддерживают значения типа System.Double[], допускается использование значений только следующих типов: Double, Decimal, Single, int, long, uint, ulong, String, DateTime, short, ushort."
1 AaNnDdRrEeYy
 
04.02.15
23:26
что бы были даты нужно в методе addBar() как то использовать параметр х, посмотри все возможные перегрузки метода
Points.Add(mas1);
2 Garykom
 
гуру
04.02.15
23:36
(0) SourceChart.Series[0].Points.Add(New DataPoint(x, mas1)) ?
3 megalira
 
05.02.15
21:09
Спасибо всем. Любился долго, но решил проблему следующим образом:
            DataPoint res = SourceChart.Series[0].Points.Add(mas1);
            res.AxisLabel = x.ToString();
4 megalira
 
05.02.15
21:10
(2) Не прокатило, не принимает он тип DateTime
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс