Идиоматический способ нарисовать кривую на линейчатом графике
Что у меня есть BarSeries
отображать гистограмму (повернутую на 90 градусов по сравнению с обычным способом рисования гистограмм).
Оставляя в стороне вопрос, является ли это наилучшим способом рисования гистограммы, используя классы в System.Windows.Controls.DataVisualization
(хотя комментарии приветствуются), что было бы лучшим способом нарисовать кривую на таком графике?
Эта кривая (в моем случае это просто пунктирная линия Гаусса), вероятно, должна быть масштабирована и расположена внутри "системы координат" диаграммы. (Эти кавычки предназначены для того, чтобы показать, что на линейчатой диаграмме столбцов нет действительной двумерной системы координат, но, регулируя размеры стержней и промежутки, я думаю, это можно было бы эффективно превратить в одну.)
Я провел небольшое исследование и начал немного поиграться с AdornerDecorator
дает мне AdornerLayer
рисовать, но есть и StackedPanel
s и, возможно, другие варианты, так что если кто-нибудь знает хороший способ реализовать то, что мне нужно, это, вероятно, избавит меня от проб и ошибок.
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>