Google visualization 当没有数据时,如何显示空的谷歌图表?
考虑绘制柱状图,但我没有从数据源获取任何数据,如何绘制空图表,而不是显示红色默认消息“Table has no columns”?我要做的是使用1列和1个数据点(设置为0)初始化图表。然后,每当添加数据时,我检查是否只有一列,并且它是伪列,然后删除它。我还隐藏图例以使其不与虚拟列一起出现,然后在添加新列时添加它 下面是一些示例代码,您可以将其插入到实现我所说内容的。您应该看到空图表2秒钟,然后添加数据并显示列Google visualization 当没有数据时,如何显示空的谷歌图表?,google-visualization,Google Visualization,考虑绘制柱状图,但我没有从数据源获取任何数据,如何绘制空图表,而不是显示红色默认消息“Table has no columns”?我要做的是使用1列和1个数据点(设置为0)初始化图表。然后,每当添加数据时,我检查是否只有一列,并且它是伪列,然后删除它。我还隐藏图例以使其不与虚拟列一起出现,然后在添加新列时添加它 下面是一些示例代码,您可以将其插入到实现我所说内容的。您应该看到空图表2秒钟,然后添加数据并显示列 var数据、选项、图表; 函数drawVisualization(){ data=go
var数据、选项、图表;
函数drawVisualization(){
data=google.visualization.arrayToDataTable([
['Time','dummy'],
['', 0],
]);
选项={
标题:“我的图表”,
宽度:600,高度:400,
哈克斯:{标题:“时间”},
图例:{位置:'none'}
};
//创建并绘制可视化。
chart=新的google.visualization.ColumnChart(document.getElementById('visualization');
图表绘制(数据、选项);
setTimeout('addData(“12:00”,10)”,2000年);
setTimeout('addData(“12:10”,20)”,3000);
}
函数addData(x,y){
if(data.getColumnLabel(1)='dummy'){
data.addColumn('number','Your Values','col_id');
数据删除列(1);
options.legend={position:'right'};
}
data.addRow([x,y]);
图表绘制(数据、选项);
}
解决此问题的更好方法可能是使用注释列而不是数据列,如下所示。使用此解决方案,您不需要使用任何setTimeout或自定义函数来删除或隐藏列。尝试一下,将下面给定的代码粘贴到中
我这样做的方法是禁用饼图切片、关闭工具提示、填充一个假值并将其置为灰色。我相信有更聪明的方法可以做到这一点,但这对我来说是可行的,而其他方法则不然 唯一的缺点是它将图例中的两个项目都设置为灰色。我想你可以只添加第三项,使其仅在图例上不可见。不过我喜欢这种方式
function drawChart() {
// Define the chart to be drawn.
data = new google.visualization.DataTable();
data.addColumn({type: 'string', label: 'Result'});
data.addColumn({type: 'number', label: 'Count'});
data.addRows([
['Value A', 0],
['Value B', 0]
]);
var opt_pieslicetext = null;
var opt_tooltip_trigger = null;
var opt_color = null;
if (data.getValue(1,1) == 0 && data.getValue(0,1) == 0) {
opt_pieslicetext='none';
opt_tooltip_trigger='none'
data.setCell(1,1,.1);
opt_color= ['#D3D3D3'];
}
chart = new google.visualization.PieChart(document.getElementById('mydiv'));
chart.draw(data, {sliceVisibilityThreshold:0, pieSliceText: opt_pieslicetext, tooltip: { trigger: opt_tooltip_trigger }, colors: opt_color } );
}
function drawChart() {
// Define the chart to be drawn.
data = new google.visualization.DataTable();
data.addColumn({type: 'string', label: 'Result'});
data.addColumn({type: 'number', label: 'Count'});
data.addRows([
['Value A', 0],
['Value B', 0]
]);
var opt_pieslicetext = null;
var opt_tooltip_trigger = null;
var opt_color = null;
if (data.getValue(1,1) == 0 && data.getValue(0,1) == 0) {
opt_pieslicetext='none';
opt_tooltip_trigger='none'
data.setCell(1,1,.1);
opt_color= ['#D3D3D3'];
}
chart = new google.visualization.PieChart(document.getElementById('mydiv'));
chart.draw(data, {sliceVisibilityThreshold:0, pieSliceText: opt_pieslicetext, tooltip: { trigger: opt_tooltip_trigger }, colors: opt_color } );
}