0

コード:

<toolkit:Chart x:Name="pieChart" Grid.Row="2" Title="">

    <toolkit:Chart.Series>
        <toolkit:PieSeries ItemsSource="{Binding}"
                           IndependentValueBinding="{Binding A}"
                           DependentValueBinding="{Binding X}"
                           Margin="-500,0,0,0">                    
        </toolkit:PieSeries>
        <toolkit:PieSeries ItemsSource="{Binding}"
                           IndependentValueBinding="{Binding A}"
                           DependentValueBinding="{Binding Y}"
                           Margin="0,0,0,0"/>
        <toolkit:PieSeries ItemsSource="{Binding}"
                           IndependentValueBinding="{Binding A}"
                           DependentValueBinding="{Binding Z}"
                           Margin="500,0,0,0"/>

    </toolkit:Chart.Series>
</toolkit:Chart>

余白がなければ、3 つのパイが 1 つに重なります。3つに分割するにはどうすればよいですか?注:<toolkit:ColumnSeriesすべてが期待どおりに機能します。

より良い質問だと思います: 1 つの凡例で 3 つのパイを表示するにはどうすればよいですか?

編集:解決策 渦が示唆したように、これを行う簡単な方法は見つかりませんでした。凡例のないグラフ:

           <toolkit:Chart x:Name="pieChart" LegendStyle="{StaticResource NoLegendStyle}">
            <toolkit:Chart.Series>
                <toolkit:PieSeries ItemsSource="{Binding}"
                                   IndependentValueBinding="{Binding A}"
                                   DependentValueBinding="{Binding X}"/>                    
            </toolkit:Chart.Series>
        </toolkit:Chart>

チャートのない凡例:

<toolkit:Chart x:Name="pieChart3"   ChartAreaStyle="{StaticResource NoChartStyle}">
                    <toolkit:Chart.Series>
                        <toolkit:PieSeries ItemsSource="{Binding}"
                                       IndependentValueBinding="{Binding A}"
                                       DependentValueBinding="{Binding X}"/>
                    </toolkit:Chart.Series>
                </toolkit:Chart>

スタイルは次のとおりです。

<UserControl.Resources>
    <Style x:Key ="NoLegendStyle" TargetType="toolkit:Legend">
        <Setter Property="Height" Value="0" />
        <Setter Property="Width" Value="0" />
    </Style>
    <Style x:Key ="NoChartStyle" TargetType="chartingPrimitivesToolkit:EdgePanel">
        <Setter Property="Height" Value="0" />
        <Setter Property="Width" Value="0" />
    </Style>
</UserControl.Resources>

xmlns:chartingPrimitivesToolkit="clr-namespace:System.Windows.Controls.DataVisualization.Charting.Primitives;assembly=System.Windows.Controls.DataVisualization.Toolkit"

すべてのグラフは同じデータ コンテキストを共有します。

4

1 に答える 1

0

2 つのチャートで凡例を無効にします。次に、表示している凡例に凡例項目をプログラムで追加します。

于 2011-07-01T16:35:53.510 に答える