Идиоматический способ нарисовать кривую на линейчатом графике

Что у меня есть BarSeries отображать гистограмму (повернутую на 90 градусов по сравнению с обычным способом рисования гистограмм).

Оставляя в стороне вопрос, является ли это наилучшим способом рисования гистограммы, используя классы в System.Windows.Controls.DataVisualization (хотя комментарии приветствуются), что было бы лучшим способом нарисовать кривую на таком графике?

Эта кривая (в моем случае это просто пунктирная линия Гаусса), вероятно, должна быть масштабирована и расположена внутри "системы координат" диаграммы. (Эти кавычки предназначены для того, чтобы показать, что на линейчатой ​​диаграмме столбцов нет действительной двумерной системы координат, но, регулируя размеры стержней и промежутки, я думаю, это можно было бы эффективно превратить в одну.)

Я провел небольшое исследование и начал немного поиграться с AdornerDecoratorдает мне AdornerLayer рисовать, но есть и StackedPanels и, возможно, другие варианты, так что если кто-нибудь знает хороший способ реализовать то, что мне нужно, это, вероятно, избавит меня от проб и ошибок.

1 ответ

Решение

Просто добавьте оба ColumnSeries также как и LineSeries внутри того же Chart элемент. Следующий фрагмент также содержит LayoutTransform который вращает все это.

<Grid>
  <Chart>
    <Chart.LayoutTransform>
      <RotateTransform CenterX="0.5" CenterY="0.5" Angle="90"/>
    </Chart.LayoutTransform>

    <ColumnSeries></ColumnSeries>
    <LineSeries></LineSeries>
  </Chart>
</Grid>
Другие вопросы по тегам