Как можно установить оси Y и X диаграммы инструментария wpf? что-то вроде у: кг, х: лет - PullRequest
2 голосов
/ 03 марта 2010

Привет, я хотел бы знать, как я могу установить метку для оси X и оси Y?

Верно, у меня есть диаграмма со значениями, и я форматирую всплывающую подсказку, но я не могу понять, как установить метку для оси X и оси Y.

Другое дело, возможно ли выполнить масштабирование в серии диаграмм, я имею в виду, если у меня есть ось x в годах, я хотел бы изменить ее на месяцы, или в линии должны появиться семестры и новые точки? если это возможно, слишком сложно это сделать?

1 Ответ

1 голос
/ 03 марта 2010

Мне не удалось установить метку оси y (я не думаю, что это возможно), но вы можете установить ее для легенды, используя свойство Title. На оси x это зависит от привязки, установленной для вашей DataPointSeries'IndependentValueBinding.

Допустим, в этом примере я создал объект класса, который будет представлять каждую запись / точку данных.

public class ChartInfo
{
    public string Label { get; set; }
    public double Value { get; set; }
}

Тогда у меня есть этот код:

List<ChartInfo> list = new List<ChartInfo>();
ChartInfo item = new ChartInfo();
item.Label = "Individual";
item.Vale = 27;
list.Add(item);
item = new ChartInfo();
item.Label = "Corporate";
item.Vale = 108;
list.Add(item);

DataPointSeries series = new ColumnSeries();
series.Title = "Quantity";
series.DependentValueBinding = new Binding("Value");
series.IndependentValueBinding = new Binding("Label");
series.ItemsSource = list;
series.SelectionChanged += new SelectionChangedEventHandler(series_SelectionChanged);
this.chartingToolkitControl.Series.Add(series);

Это даст мне этот результат.

альтернативный текст http://www.freeimagehosting.net/uploads/78e2598620.jpg

Для увеличения - я думаю, что правильный термин - детализация. Вы можете использовать событие SelectionChanged (см. Код выше). Вам нужно запросить источник данных, очистить серию графиков и добавить новую на основе результатов запроса.

private void series_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        //The sender here is of type DataPointSeries wherein you could get the SelectedItem (in our case ChartInfo) and from there you could do the requery.
    }
...