【问题标题】:Stacked Charts in modern UI Metro WPF现代 UI Metro WPF 中的堆叠图表
【发布时间】:2015-09-18 20:27:59
【问题描述】:

有人可以向我解释如何在 wpf 中使用 Morder UI (Metro) Charts (http://modernuicharts.codeplex.com/) 创建堆积条形图。

如果我执行以下 XAML;

 <metroChart:StackedBar100Chart d:IsLocked="True" Name="f" >
                <metroChart:StackedBar100Chart.Series>
                    <metroChart:ChartSeries  DisplayMember="Name"
                        ItemsSource="{Binding ExampleValues}"
                        ValueMember="Count" />
                </metroChart:StackedBar100Chart.Series>
  </metroChart:StackedBar100Chart>

我可以绑定到一个可观察的数字集合 - 但是我如何添加第二个堆栈、第三个堆栈等。

添加一个新系列会增加更多条;

 <metroChart:StackedBar100Chart d:IsLocked="True">
                    <metroChart:StackedBar100Chart.Series>
                        <metroChart:ChartSeries  DisplayMember="Name"
                            ItemsSource="{Binding ExampleValues}"
                            ValueMember="Count" />
                        <metroChart:ChartSeries  DisplayMember="Name"
                            ItemsSource="{Binding ExampleValues2}"
                            ValueMember="Count" />
                    </metroChart:StackedBar100Chart.Series>
  </metroChart:StackedBar100Chart>

 exampleValues.Add(new ExampleValues() { Name = "China", Count = 1340 });
        exampleValues.Add(new ExampleValues() { Name = "India", Count = 1220 });
        exampleValues.Add(new ExampleValues() { Name = "United States", Count = 309 });
        exampleValues.Add(new ExampleValues() { Name = "Indonesia", Count = 240 });
        exampleValues.Add(new ExampleValues() { Name = "Brazil", Count = 195 });
        exampleValues.Add(new ExampleValues() { Name = "Pakistan", Count = 174 });
        exampleValues.Add(new ExampleValues() { Name = "Nigeria", Count = 158 });

        exampleValues2.Add(new ExampleValues() { Name = "England", Count = 860 });
        exampleValues2.Add(new ExampleValues() { Name = "Scotland", Count = 600 });
        exampleValues2.Add(new ExampleValues() { Name = "Wales", Count = 209 });

如何在现有条形图上堆叠?

我想为每个示例国家/地区制作类似的东西;

【问题讨论】:

  • 只是为了澄清堆栈我的意思是同一系列中的不同块
  • 您可以将多个&lt;ChartSeries&gt; 添加到您的Series
  • Sybren 你能举个例子吗? multipe 系列不是要创建多条线吗?我想知道的是如何在 1 条上设置多个块
  • 我认为您还必须将 Series 元素绑定到集合。

标签: c# wpf xaml


【解决方案1】:

Series 元素是一个集合,因此您可以添加另一个 ChartSeries

<metroChart:StackedBar100Chart.Series>
    <metroChart:ChartSeries DisplayMember="Name"
                            ItemsSource="{Binding ExampleValues}"
                            ValueMember="Count" />

    <!-- You can add more series elements here. -->
    <metroChart:ChartSeries DisplayMember="Name"
                            ItemsSource="{Binding AnotherCollection}"
                            ValueMember="Count" />
</metroChart:StackedBar100Chart.Series>

【讨论】:

  • 嗨 Mike - 这似乎添加了新的条形图 - 我想知道如何在现有条形图上堆叠(我已经编辑了问题)
  • 您可以将项目添加到现有集合中,或者您可以编辑Style,以便系列之间的边距不会那么大。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多