Как использовать элементы управления Microsoft Chart для .NET 3.5 для WinForms, как можно пометить определенные даты меткой и меткой сетки? - PullRequest
2 голосов
/ 09 апреля 2009

Я использую Microsoft Chart Controls и отображаю данные с датами вдоль оси X и хочу иметь сетку с другим цветом на некоторые даты.

Допустим, я отображаю данные за одну неделю с 7 значениями по оси X:

05.04.09 06.04.09 07.04.09 08.04.09 09.04.09 10.04.09 11.04.09

Кроме того, у меня есть коллекция DateTimes и имен для некоторых событий, где одно - 07.04.09, а другое - 10.04.09. Затем я хочу нарисовать вертикальную линию сетки для каждой из этих дат и добавить метку с именем события.

Я просто не могу понять, как, черт возьми, я могу этого достичь. Любая помощь приветствуется.

Ответы [ 4 ]

1 голос
/ 15 октября 2010
chartName.Series["seriesName"].Points[index]["Color"] 
  = System.Drawing.Color.Blue;
1 голос
/ 11 мая 2009

Я решил это, подписавшись на событие PostPaint. В обработчике событий я просто рисую линии и добавляю метки поверх этих вертикальных линий.

0 голосов
/ 09 апреля 2009

До сих пор мне удалось воплотить его в жизнь, используя CustomLabels на вторичной оси X, и пометить галочки на этой оси нужным цветом. Теперь основной проблемой является синхронизация обеих осей X, чтобы пользовательские метки заканчивались там, где я их хочу, поскольку они в настоящее время немного разбросаны.

0 голосов
/ 09 апреля 2009

Насколько я знаю, вы не можете изменить цвет определенных линий в сетке графика. Предварительным решением может быть добавление новой серии диаграмм типа Column; Значения ряда ненулевые в датах, которые вы хотите выделить. Это обходной путь, но это может быть отправной точкой. Что касается лейбла, я понятия не имею.

...