google.charts.load('current',{
packages: ['corechart','controls']
}).then(function () {
var dashboard = new google.visualization.Dashboard(
document.getElementById('dashboard')
);
var control = new google.visualization.ControlWrapper({
'controlType': 'ChartRangeFilter','containerId': 'control','options': {
// Filter by the date axis.
'filterColumnIndex': 0,'ui': {
'chartType': 'LineChart','chartOptions': {
'chartArea': {'width': '84%'},'hAxis': {'baselineColor': 'none',format: "dd.MM.yyyy" }
}
}
},});
var chart = new google.visualization.ChartWrapper({
'chartType': 'LineChart','containerId': 'chart','options': {
animation:{
startup:true,duration: 1000,easing: 'out'
},tooltip: {isHtml: true},lineWidth: 4,legend: {position: 'none'},// Use the same chart area width as the control for axis alignment.
'chartArea': {'height': '80%','width': '84%',interpolateNulls: true},hAxis: {
title: ''
},vAxis: { format :<?php echo "'#.## ".html_entity_decode($currencyhtml[$userCurrency])."'"; ?>,viewWindowMode:'pretty',gridlines: {
count: 4,},'slantedText': false,title: ''
},}
// Convert the first column from 'date' to 'string'.
});
var data = new google.visualization.DataTable();
data.addColumn('date','Time of Day');
data.addColumn('number','Value');
data.addColumn({type: 'string',role: 'tooltip','p': {'html': true}});
var rawData = [
[new Date(2019,01,01),1.00,'example tooltip'],[new Date(2019,03),1.03,05),2.00,07),1.30,09),11),13),1.10,15),1.50,17),1.20,19),3.00,21),23),1.25,'example tooltip']
];
dashboard.bind(control,chart);
drawChart();
setInterval(drawChart,1200);
var rowIndex = 0;
function drawChart() {
if (rowIndex < rawData.length) {
data.addRow(rawData[rowIndex++]);
dashboard.draw(data);
}
}
});
到目前为止,它运行良好,但是在我的示例中,我想实现此启动动画(Google Visualization: Animated Line Graph --incremental rather than all at once?)。我试图放置
drawChart();
setInterval(drawChart,1200);
var rowIndex = 0;
function drawChart() {
if (rowIndex < rawData.length) {
data.addRow(rawData[rowIndex++]);
chart.draw(data,options);
}
}
在正确的位置上,但图形根本没有绘制:(。任何人都知道我在示例中要做的事情,以便从左到右获得这个不错的启动动画。