-1
私は2つのチャートを作った。両方とも1つのラインチャートです。それらはx軸とy軸の値が異なります。しかし、私は同時に両方を見せたいと思っています。だから私は、背景と2番目のグラフの軸を透明にする必要があります。私は最初のグラフでそれを見ることができるように、行だけが表示されたままにする必要があります。 2番目のグラフの軸が正しくないことは問題ではありません。互換性のない範囲のチャートシリーズを扱うには?
これは、両方のチャートが表示されているとき、それはのようになります方法です。どのように私は、透明または非表示?:
<chartingToolkit:Chart Background="White" BorderThickness="0">
<chartingToolkit:LineSeries DependentValuePath="Value" IndependentValuePath="Key" ItemsSource="{Binding DemandPrice}" IsSelectionEnabled="True" Visibility="{Binding TodayVisible}">
<chartingToolkit:LineSeries.Style>
<Style TargetType="chartingToolkit:LineSeries" BasedOn="{StaticResource {x:Type chartingToolkit:LineSeries}}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="chartingToolkit:LineSeries">
<Canvas x:Name="PlotArea">
<Polyline x:Name="polyline"
Points="{TemplateBinding Points}"
Style="{TemplateBinding PolylineStyle}"
StrokeThickness="4" >
<Polyline.Stroke>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="Gray" Offset="0"/>
<GradientStop Color="Gray" Offset="1"/>
</LinearGradientBrush>
</Polyline.Stroke>
</Polyline>
</Canvas>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</chartingToolkit:LineSeries.Style>
<chartingToolkit:LineSeries.DataPointStyle>
<Style TargetType="chartingToolkit:LineDataPoint">
<Setter Property="Background" Value="Transparent" />
</Style>
</chartingToolkit:LineSeries.DataPointStyle>
</chartingToolkit:LineSeries>
</chartingToolkit:Chart>
<chartingToolkit:Chart Background="Transparent" BorderThickness="0">
<!-- EEX Price-->
<chartingToolkit:LineSeries DependentValuePath="Value" IndependentValuePath="Key" ItemsSource="{Binding EEXPrice}" IsSelectionEnabled="True" Background="{StaticResource AccentColorBrush}" Visibility="{Binding EEXVisible}">
<chartingToolkit:LineSeries.Style>
<Style TargetType="chartingToolkit:LineSeries" BasedOn="{StaticResource {x:Type chartingToolkit:LineSeries}}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="chartingToolkit:LineSeries">
<Canvas x:Name="PlotArea">
<Border
Background="Transparent"
BorderBrush="Transparent"
BorderThickness="0">
</Border>
<Polyline x:Name="polyline"
Points="{TemplateBinding Points}"
Style="{TemplateBinding PolylineStyle}"
StrokeThickness="4">
<Polyline.Stroke>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="Blue" Offset="0"/>
<GradientStop Color="Blue" Offset="1"/>
</LinearGradientBrush>
</Polyline.Stroke>
</Polyline>
</Canvas>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</chartingToolkit:LineSeries.Style>
<chartingToolkit:LineSeries.DataPointStyle>
<Style TargetType="chartingToolkit:LineDataPoint">
<Setter Property="Background" Value="Transparent" />
</Style>
</chartingToolkit:LineSeries.DataPointStyle>
</chartingToolkit:LineSeries>
<chartingToolkit:Chart.LegendStyle>
<Style TargetType="datavis:Legend">
<Setter Property="Width" Value="0" />
</Style>
</chartingToolkit:Chart.LegendStyle>
</chartingToolkit:Chart>
これらは、軸上で異なる値の範囲を持つためです。チャート1のy値は14.000までですが、チャート2のy値は0と35の間にしかありません。したがって、チャート2はチャートの最下部に線として表示されます。同じチャート、 – L4c0573