0
여기 내 문제가 있습니다.라이브 차트가 기본 범례를 변경합니다.
일부 데이터를 표시하는 데 LiveCharts를 사용하고 있습니다. 표시되는 모든 데이터를 나타내는 범례가 표시 될 때까지는 문제가 없습니다.
그것은 예를 들어 색상 (뇌졸중) 또는 DefaultGeometries을위한 기반 전설을 보여 possibile인가요? 당신의 도움에 미리감사합니다,
디에고
여기 내 문제가 있습니다.라이브 차트가 기본 범례를 변경합니다.
일부 데이터를 표시하는 데 LiveCharts를 사용하고 있습니다. 표시되는 모든 데이터를 나타내는 범례가 표시 될 때까지는 문제가 없습니다.
그것은 예를 들어 색상 (뇌졸중) 또는 DefaultGeometries을위한 기반 전설을 보여 possibile인가요? 당신의 도움에 미리감사합니다,
디에고
나는이 조금 늦게하지만 난 지금 여기에, 비슷한 뭔가를 찾고 내가 가지고 올 수 있었던 것입니다되었다 알고있다.
새 컬렉션을 만들고 Live Charts Energy Predictions의 예를 따라야합니다. 바인더 제본 목록에서
<ListBox Name="ListBox" MinHeight="250" ItemsSource="{Binding AllSeriesGroupByName, ElementName=FastGraphRoot}" Panel.ZIndex="1" BorderThickness="0" Background="Transparent">
<ListBox.ItemTemplate>
<DataTemplate DataType="{x:Type wpf:LineSeries}">
<TextBlock Text="{Binding Title}"
Foreground="{Binding Stroke}"
FontSize="24"/>
</DataTemplate>
</ListBox.ItemTemplate>
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="Background" Value="Transparent" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ListBoxItem}">
<ContentPresenter />
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
올 것 :
먼저 당신이 차트에 대한
<wpf:CartesianChart Hoverable="False" DataTooltip="{x:Null}" DisableAnimations="True" LegendLocation="None" Series="{Binding AllSeries, ElementName=FastGraphRoot}">
새로운 전설 코드 (.xaml에서 중요한 부분을)를 LegendLocation = "없음"을 설정해야 원래 시리즈지만 그룹화, 나는 이것을 위해 속성을 사용했습니다 :
private SeriesCollection _allSeriesGroupByName = new SeriesCollection();
public SeriesCollection AllSeriesGroupByName { get { return _allSeriesGroupByName; } set { _allSeriesGroupByName = value; OnPropertyChanged(); } }
당신은 그것을 채울 수 있습니다. 이 코드 (또는 더 빨리 생각하는 다른 것)를 암시하십시오.
var col = collection.GroupBy(g => ((LineSeries)g).Stroke).Select(p => p.First());
AllSeriesGroupByName = new SeriesCollection();
foreach (var c in col)
{
AllSeriesGroupByName.Add(c);
}