Передайте данные JSON из .NET WebHandler, чтобы перерисовать Pie Highcharts новыми данными серии - PullRequest
0 голосов
/ 29 февраля 2012

Я хочу создать страницу с круговой диаграммой по умолчанию и несколькими кнопками.Когда пользователь нажимает на кнопки, страница получает новые данные JSON из WebHandler и перерисовывает диаграмму.Я использую .net 2.0, C #, веб-формы.

У меня есть WebHandler json.ashx, генерирующий JSON:

public void ProcessRequest (HttpContext context) {        
    String data = String.Empty;
    data += "[{\"Male\": 80.0}, {\"Female\": 20.0}]";
    context.Response.ContentType = "application/json";
    context.Response.Write(data);
}

Вот мой скрипт на странице aspx:

    var chart = null;

    $(document).ready(function () {

        var options = {
            chart: {
                renderTo: 'container',
                defaultSeriesType: 'pie'
            },
            tooltip: {
                formatter: function () {
                    return '<b>' + this.point.name + '</b>: ' + this.y + ' (' + this.percentage + '%)';
                }
            },
            plotOptions: {
                pie: {
                    allowPointSelect: true,
                    cursor: 'pointer',
                    dataLabels: {
                        enabled: true,
                        color: '#000000',
                        connectorColor: '#000000',
                        formatter: function () {
                            return '<b>' + this.point.name + '</b>: ' + this.y + ' (' + this.percentage + '%)';
                        }
                    }
                }
            },
            series: [{
                data: [['Yes', 60], ['No', 40]]
            }]

        };

        var chart = new Highcharts.Chart(options);


        $("#Gender").click(function () {
            $.get('json.ashx', function (data) {
                options.series = data;
                var chart = new Highcharts.chart(options);
            });
        });

    });

при нажатии на кнопку Gender новый график не генерируется.Как правильно проанализировать данные JSON и передать их в series.data новой круговой диаграммы?

1 Ответ

0 голосов
/ 06 марта 2012

Нвм, я решил проблему.Я должен был передать в формате Json, который хотят старшие диаграммы.

Например: [{"type": "pie", "name": "Fruits", "data": [["Apple", 43.0], [ "груша", 57,0]]}]

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