Существует ли элемент управления линейной диаграммы WinForms, который может индивидуально окрашивать сегменты? - PullRequest
3 голосов
/ 18 марта 2011

Мне нужен элемент управления линейной диаграммы для Windows Forms, который позволяет мне указать цвет для каждого сегмента.Например, что-то вроде биржевой диаграммы, показанной ниже.

Проблема с прокруткой моей собственной карты заключается в том, что, если я рисую каждый сегмент отдельно, я не получаю преимущества LineJoins, такие как Mitre, Round или Bevel.Если я использую Graphics.DrawLines для получения хороших объединений, я не могу индивидуально управлять цветами сегмента.

Есть ли обходной путь, или, что еще лучше, коммерчески доступный элемент управления диаграммой, который имеет этоттип гибкости?

line chart

Ответы [ 2 ]

0 голосов
/ 26 августа 2016

Обычный элемент управления MSChart будет делать именно это, при условии, что вы назначаете каждый DataPoint a Color ..:

enter image description here

Series ser2 = chart1.Series.Add("line");
ser2.ChartType = SeriesChartType.Line;

Random r = new Random(8);
ser2.Points.AddXY(0, 10);
for (int i = 1; i < 60; i++ )
{
    int v = 10 + r.Next(10);
    int p = ser2.Points.AddXY(i, v);
    ser2.Points[p].Color =
        ser2.Points[p - 1].YValues[0] < ser2.Points[p].YValues[0] ?
        Color.Black : Color.Red;

}
0 голосов
/ 18 марта 2011

Вы смотрели на элемент управления диаграммой, встроенный в Visual Studio 2010?Он очень мощный (технология, приобретенная у Dundas)

Я знаю, что серия может выглядеть аналогично включенному вами изображению, если вы используете среднюю функцию "Пустая точка"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...