Я хочу создать страницу с круговой диаграммой по умолчанию и несколькими кнопками.Когда пользователь нажимает на кнопки, страница получает новые данные 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
новой круговой диаграммы?