하이 차트 원형 차트를 사용하는 페이지가 있는데 날짜 선택기 드롭 다운으로 차트를 업데이트하려고합니다. 나는 막대 차트와 그 위대한 작업을위한 비슷한 구현을했습니다. 주의하십시오 (이것은 PHP 클래스에서 나오므로 연결과 결합하지 않습니다).Ajax의 Highcharts 원형 차트
<script type='text/javascript'>
function drawPie(data)
{
var chart;
alert('called');
var options = {
chart: {
renderTo: 'PieChart',
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false,
height: 350
},
title: {
text: 'Product Popularity'
},
tooltip: {
pointFormat: '{series.name}: <b>{point.percentage}%</b>',
percentageDecimals: 1
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {enabled: false},
showInLegend: true
}
},
series: [{
type: 'pie',
name: 'Product Popularity',
data: data
}]
}
chart = new Highcharts.Chart(options);
$('#ProductPieMod div.mod_content').css('height', $('#PieChart').css('height'));
}
$(document).ready(function(){
drawPie(" . $this->get_data($this->date) . ");
$('#ProductPieMod_date').on('change', function(){
var val = parseInt($(this).val());
switch(val)
{
case 0:
var date = Date.today();
break;
case 1:
var date = Date.parse('last week');
break;
case 2:
var date = Date.today().moveToFirstDayOfMonth();
break;
case 3:
var date = Date.parse('January').moveToFirstDayOfMonth();
break;
default:
var date = Date.today();
}
var info;
$.ajax({
type: 'POST',
url: '". matry::base_to('utilities/dhs/manager_dash') . "',
async: false,
dataType: 'json',
data: {date: date.toString('M/dd/yyyy'), module: 'ProductPieMod'},
success: function(data)
{
drawPie(data);
}
});
});
});
</script>
내 아약스는 다음과 같은 문자열을 반환 :
[['FASTCLIX LANCING DEVICE', 62.5],['FREESTYLE LANCING DEVICE', 25],['ONETOUCH DELICA LANCING DEVICE', 12.5]]
또한,이 차트는 초기에 동일한 방법, 잘을 사용하여 만들어집니다. 그것은 방금 중단 드롭 다운 (onChange 이벤트를 실행)을 사용할 때.
업데이트 은 나뿐만 아니라이의 바이올린을 만들었습니다 http://jsfiddle.net/SHReZ/1/는
highcharts 라이브러리가 있습니다. 그것은 당신이 비록 html과 javascript 모두를 볼 수있게 해줌으로써 –
작업해야하는 데 도움이 – Mike
이 작동하고 왜 이것이 lib를 가지지 않는가? 귀하의 바이올린을 사용하여 : [그 데모] (http://jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/highcharts.com/tree/master/samples/highcharts/demo/pie-basic/) –