Почему мой RadChart StackedBarChart не складывает столбцы в соответствии с осью Y? - PullRequest
0 голосов
/ 30 декабря 2011

Я использую элементы управления Telerik RadChart для Silverlight с Silverlight 4.0. У меня возникла проблема из-за различий в моих наборах данных, из-за которых мои большие столбцы сгруппированы в ChartArea. Нет проблем, подумал я, я могу просто просмотреть все свои данные и найти максимальный размер, который должен иметь мой StackedBar, и настроить масштаб оси Y. Вот метод, который я выбрал для реализации.

    private void ForceScaleOfYaxis(IEnumerable<ChartObject> chartData)
    {
        double sum = 0;
        foreach (var bar in chartData)
        {
            sum = Math.Max(sum, bar.Series1 +
                                bar.Series2 +
                                bar.Series3 +
                                bar.Series4 +
                                bar.Series5);
        }

        ChartArea chartArea = radChart1.DefaultView.ChartArea;
        chartArea.AxisY.AutoRange = true;
        double min = chartArea.AxisY.ActualMinValue;
        double step = sum / 10; 
        chartArea.AxisY.AutoRange = false;
        chartArea.AxisY.AddRange(min, sum, step); 
    }

Это сработало достаточно хорошо, так как изменило ось Y, чтобы оно стало равным наибольшей сумме значений ряда для столбца с накоплением.

Теперь у меня другая проблема: я правильно установил масштаб оси Y, но графики не отображаются в стеке. Stacked Bar Chart

Это можно увидеть на следующем графике, как показано на снимке экрана.

1 Ответ

0 голосов
/ 08 января 2012

Я не думаю, что это связано с отсечкой баров, вызванной диапазоном YAxis, а скорее с тем, как вы группируете данные и заполняете диаграмму. Пример вашего проекта должен пролить свет на реальную проблему.

...