Как заполнить диаграмму silverlight WP7 - PullRequest
0 голосов
/ 02 февраля 2012

Мне нужно создать диаграмму (WP7), содержащую несколько серий.Данные, которые я пытаюсь визуализировать:

F.ex следующая коллекция, содержащая имя пользователя, дату, очки:

  1. пользователь1,2011-11-09,6
  2. Пользователь2,2011-11-09,8
  3. Пользователь1,2011-11-02,9
  4. Пользователь2,2011-11-02,8

В данных может быть более двух пользователей.

пространство имен XAML

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

CodeBehind

mdChart.Series.Add(MDSeries);                
mdChart.Title = "Statistics";
MDSeries.SetBinding(ColumnSeries.ItemsSourceProperty, new Binding());
MDSeries.ItemsSource = lCompetitionStats;
MDSeries.DependentValuePath = "Points";
series.IndependentValuePath = "Date";
MDSeries.IndependentValuePath = "UserName";

XAML

<controls:PanoramaItem Header="mdscores">
    <Grid>
        <charting:Chart x:Name="mdChart" Foreground="Blue" Background="Black">
            <charting:ColumnSeries Background="Black"/>
        </charting:Chart>
    </Grid>
</controls:PanoramaItem>

Какрезультат, у меня есть пользователи по оси X и точки на оси Y.Мне нужны даты на оси X, точки на оси Y и отдельная серия для пользователя earch.Как создать / заполнить такой график выполнения?

1 Ответ

0 голосов
/ 02 февраля 2012

Попробуйте следующее:

CodeBehind

public class ColumnChartValues
{
    #region Variables
    public string Label { get; private set; }
    public double Value { get; private set; }
    #endregion

    #region Constructor and Initialization
    public ColumnChartValues()
    {
        Label = string.Empty;
        Value = 0;
    }

    public ColumnChartValues(string label, double value)
    {
        Label = label;
        Value = value;
    }
    #endregion
}


public partial class StatsPage : Page
{
    public ObservableCollection<ColumnChartValues> ColumnChartDatabase { get; private set; }

    public StatsPage()
    {
        DataContext = this;
        InitializeColumnChart();
    }

    private void InitializeColumnChart()
    {                
        mdChart.Title = "Statistics";

        ColumnChartDatabase = new ObservableCollection<BarChartValues>();
        ColumnChartDatabase.Add(new ColumnChartValues("Value One: ", 1));
        ColumnChartDatabase.Add(new ColumnChartValues("Value Two: ", 2));
        ColumnChartDatabase.Add(new ColumnChartValues("Value Three: ", 3));
    }
}

XAML

<charting:Chart x:Name="mdChart" Foreground="Blue" Background="Black">
    <charting:ColumnSeries  Background="Black" ItemsSource="{Binding ColumnChartDatabase}" IndependentValueBinding="{Binding Label}" DependentValueBinding="{Binding Value}"/>
</charting:Chart>

FYI

Вам нужно будет отредактировать диаграмму ColumnChartValues ​​в соответствии с вашими потребностями

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...