Меня смущает разметка XAML в целом и особенно для инструментария диаграммы, и я был бы очень признателен за помощь в ее разборе. Я успешно создал диаграмму с осью X, показывающей временную шкалу, и осью Y, показывающей значение с использованием XAML ниже:
<chartingToolkit:Chart HorizontalAlignment="Left" Margin="44,12,0,0" Name="chart1" VerticalAlignment="Top" Height="521" Width="826">
<chartingToolkit:Chart.Axes>
<chartingToolkit:DateTimeAxis IntervalType ="Hours" Interval="1">
<chartingToolkit:DateTimeAxis.AxisLabelStyle>
<Style TargetType="chartingToolkit:DateTimeAxisLabel">
<Setter Property="Template">
<Setter.Value>
<Setter Property="StringFormat" Value="{}{0:H}" />
</Setter.Value>
</Setter>
</Style>
</chartingToolkit:DateTimeAxis.AxisLabelStyle>
</chartingToolkit:DateTimeAxis>
</chartingToolkit:Chart.Axes>
<chartingToolkit:LineSeries x:Name="LineSeries1" DependentValuePath="Value" IndependentValuePath="Key" ItemsSource="{Binding}">
<chartingToolkit:LineSeries.DataPointStyle>
<Style TargetType="chartingToolkit:LineDataPoint">
<Setter Property="Visibility" Value="Collapsed"/>
<Setter Property="Background" Value="violet"/>
<Setter Property="Opacity" Value="0" />
</Style>
</chartingToolkit:LineSeries.DataPointStyle>
</chartingToolkit:LineSeries>
</chartingToolkit:Chart>
В выделенном фрагменте кода я заполняю словарь, объявленный как Dictionary<TimeSpan, float> Dict = new Dictionary<TimeSpan, float>();
, значениями каждую минуту в течение 2 часов (60 значений) и задаю для datacontext для lineseries1
словарь как таковой: LineSeries1.DataContext = Dict.
График прекрасно рисует, как видно из моей тщетной попытки в XAML. Мне нужно, чтобы метка X и метки отображались только один раз в час, а не раз в минуту, и мне нужно, чтобы они отображали только часы, а не минуты и секунды. Мой код XAML выше для настройки интервала и форматирования метки не работает. Я был бы признателен за любой указатель, чтобы направить меня в правильном направлении.
Спасибо,
Kalory