Как показать маркерные точки в графике на C#
я использую Line graph
в моем приложении и работает нормально. Я попытался нарисовать маркерные точки на линейном графике, но маркерные точки не отображаются.
В свойствах маркера линейной диаграммы я выбрал markerSize
как 5,markerStyle
как круг,MarkerColor
как синий.См. мой код ниже.
series1.Name = "Series1";
series1.IsVisibleInLegend = false;
series1.IsXValueIndexed = true;
series1.XValueType = ChartValueType.Time;
series1.YAxisType = AxisType.Primary;
series1.ChartType = SeriesChartType.Line;
this.chart1.Series.Add(series1);
2 ответов
Я не вижу, как Markers
можете показать в коде.
вам нужно установить по умолчанию MarkerStyle
:
series1.MarkerStyle = MarkerStyle.Circle;
если вы используете отладчик на этой линии вы можете видеть, как по умолчанию is None
!
конечно, вы хотите играть со всеми другими маркер связывает свойства серии, которые все унаследованы от DataPointCustomProperties
вы используете ChartType.Line
это нормально. Обратите внимание, что FastLine
не отображает маркеры!
если вы только хотите, чтобы показать некоторые маркеры просто стиль их для каждой точки:
S1.Points[8].MarkerStyle = MarkerStyle.Triangle;
S1.Points[8].MarkerSize = 22;
S1.Points[8].MarkerColor = Color.Red;
Я предлагаю получить каждую из ваших точек, прокручивая их и добавляя каждую из них. Я заметил, что вы хотите установить имя, поэтому я просто создал счетчик, а затем добавил целое значение в конец "ser", имя, как вам угодно.
Dim counter as int = 0;
foreach (Series ser in chart.Series)
{
ser.Name = "ser" & counter + 1;
ser.IsVisibleInLegend = false;
ser.IsXValueIndexed = true;
ser.XValueType = ChartValueType.Time;
ser.YAxisType = AxisType.Primary;
ser.ChartType = SeriesChartType.Line;
this.chart1.Series.Add(ser);
counter += 1;
}