Другим простым способом работы с Highcharts и ASP.NET является использование библиотеки DotNet.Highcharts .Вот пример с круговой диаграммой:
Highcharts chart = new Highcharts("chart")
.InitChart(new Chart { PlotShadow = false })
.SetTitle(new Title { Text = "Browser market shares at a specific website, 2010" })
.SetTooltip(new Tooltip { Formatter = "function() { return '<b>'+ this.point.name +'</b>: '+ this.percentage +' %'; }" })
.SetPlotOptions(new PlotOptions
{
Pie = new PlotOptionsPie
{
AllowPointSelect = true,
Cursor = Cursors.Pointer,
DataLabels = new PlotOptionsPieDataLabels
{
Color = ColorTranslator.FromHtml("#000000"),
ConnectorColor = ColorTranslator.FromHtml("#000000"),
Formatter = "function() { return '<b>'+ this.point.name +'</b>: '+ this.percentage +' %'; }"
}
}
})
.SetSeries(new Series
{
Type = ChartTypes.Pie,
Name = "Browser share",
Data = new Data(new object[]
{
new object[] { "Firefox", 45.0 },
new object[] { "IE", 26.8 },
new Point
{
Name = "Chrome",
Y = 12.8,
Sliced = true,
Selected = true
},
new object[] { "Safari", 8.5 },
new object[] { "Opera", 6.2 },
new object[] { "Others", 0.7 }
})
});
Результат этого кода такой же, как на демонстрации старших графиков: http://www.highcharts.com/demo/pie-basic
В случае вызова функции JavaScript при нажатии наНа графике вы можете сделать это просто так:
Pie = new PlotOptionsPie
{
Point = new PlotOptionsPiePoint
{
Events = new PlotOptionsPiePointEvents
{
Click = "OnPiePointClick"
}
}
... или, если это простая функция, вы можете добавить ее напрямую:
Click = "function() { alert (this.category +': '+ this.y); }"
Для полного кода или для болееПирог примеры скачать пример проекта: http://dotnethighcharts.codeplex.com/releases/view/80650