谷歌图表转换动画:如何在重新绘制图表时更改轴标签
Google Charts Transition Animation: How to change axis labels upon redrawing the chart?
使用谷歌图表转换动画,我创建了一个图表,点击图表下方的按钮即可重新绘制(完整的功能代码可以在下面找到)。单击按钮后,图表将显示新值和新标题。
我使用以下代码更改函数drawChart中的标题:
options['title'] = 'Monthly ' + (current ? 'Test A' : 'Test B') + ' Production by Country';
现在我的问题是:我还想在单击按钮时更改横轴的标题。如果没有按钮(在静态版本中),可以通过在选项中添加以下代码来实现:
hAxis: {title: 'Axis Title'}
然而,当我将以下代码添加到我的函数中(在上面显示的标题调整后面)时,没有任何变化:
options['hAxis.title'] = 'Title ' + (current ? 'Test A' : 'Test B');
有人知道我需要如何更改上面的代码才能更改轴标题吗?
这是我的完整代码:
<html>
<head>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data1 = google.visualization.arrayToDataTable([
['Mon', 20, 28, 38, 45],
['Tue', 31, 38, 55, 66],
['Wed', 50, 55, 77, 80]
// Treat first row as data as well.
], true);
var data2 = google.visualization.arrayToDataTable([
['Mon', 23, 23, 39, 42],
['Tue', 34, 34, 59, 64],
['Wed', 55, 52, 79, 80]
// Treat first row as data as well.
], true);
// Create and populate the data tables.
var data = [];
data[0] = data1;
data[1] = data2;
var options = {
legend:'none'
};
var current = 0;
var chart = new google.visualization.CandlestickChart(document.getElementById('chart_div'));
var button = document.getElementById('b1');
function drawChart() {
// Disabling the button while the chart is drawing.
button.disabled = true;
google.visualization.events.addListener(chart, 'ready',
function() {
button.disabled = false;
button.value = 'Switch to ' + (current ? 'Test A' : 'Test B');
});
options['title'] = 'Monthly ' + (current ? 'Test A' : 'Test B') + ' Production by Country';
chart.draw(data[current], options);
}
drawChart();
button.onclick = function() {
current = 1 - current;
drawChart();
}
}
</script>
</head>
<body>
<div id="chart_div" style="width: 900px; height: 500px;"></div>
<input type="button" value="Next day" id="b1" />
</body>
</html>
非常感谢!!
我发现最简单的方法是首先在选项中定义hAxis
:
var选项={hAxis:{title:"Axis title"},图例:'none'};
然后在addListener函数下面添加这行代码:
options.hAxis.title=(当前?"测试A":"测试B")
相关文章:
- 在<页眉>标签
- D3在一个调用中绘制不同的SVG形状,没有可见性
- Ckeditor-plugin:插入虚假元素add不情愿<p>标签前后
- 有没有一个javascript图形绘制库可以进行气球树布局
- iframe正在添加标签,需要删除它们
- 使用相同的数据集绘制各种符号
- 使用onclick绘制SVG路径
- 在谷歌地图上绘制位置数据库
- 用chart.js绘制条形图
- 如何自动调整标签的高度以适应内容
- “可绘制地图”设置地图选项“纬度-经度”
- 在NVD3散点图上绘制标签
- flot:无法绘制画布内包含标签的饼图
- 如何从一个数据数组绘制图表并从另一个数据数组在图表上制作标签?高图表 v.4.0.4.
- 谷歌图表转换动画:如何在重新绘制图表时更改轴标签
- 如何只重新绘制一次饼图,而不是为它的每个数据标签绘制一次
- 如何在Sigma.js Graph上绘制边缘标签
- 有没有办法得到标签'绘制前的宽度和高度
- 你能加载一个img标签吗;s src在javascript文件中,然后将其绘制到画布上
- 使用highcharts.js标签进行绘制时会偏离中心而不是居中