Javascript 在窗口中重新调整Google图表的大小
请帮助我如何在windows重新调整大小时自动重新调整Google图表的大小 下面是一些代码:Javascript 在窗口中重新调整Google图表的大小,javascript,charts,google-visualization,dom-events,Javascript,Charts,Google Visualization,Dom Events,请帮助我如何在windows重新调整大小时自动重新调整Google图表的大小 下面是一些代码: <script type="text/javascript" src="https://www.google.com/jsapi"></script> <script type="text/javascript"> google.load("visualization", &qu
<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 data = google.visualization.arrayToDataTable([
['Day', 'Open ticket', 'Closed ticket'],
['Day 1', 10, 400],
['Day 2', 170, 460],
['Day 3', 60, 1120],
['Day 4', 30, 540],
]);
var options = {
title: 'DAILY GRAPH',
hAxis: {title: 'NOVEMBER', titleTextStyle: {color: '#333'}},
vAxis: {minValue: 0}
};
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
</script>
load(“可视化”、“1”、{packages:[“corechart”]});
setOnLoadCallback(drawChart);
函数绘图图(){
var data=google.visualization.arrayToDataTable([
[‘天’、‘开放票’、‘封闭票’],
['Day 1',10400],
[‘第二天’、170460],
['Day 3',60,1120],
['Day 4',30,540],
]);
变量选项={
标题:“每日图表”,
hAxis:{title:'seven',titleTextStyle:{color:'333'},
变量:{minValue:0}
};
var chart=new google.visualization.LineChart(document.getElementById('chart_div'));
图表绘制(数据、选项);
}
这里有一种方法:
添加此事件处理程序:
window.onresize = drawChart;
然后将图表宽度和高度基于窗口宽度和高度的百分比:
var width = .4 * window.innerHeight;
var height = .4 * window.innerWidth;
var options = {
title: 'DAILY GRAPH',
width: width,
height: height,
hAxis: { title: 'NOVEMBER', titleTextStyle: { color: '#333' } },
vAxis: { minValue: 0 }
};
您可以在
头部
部分的百分比中定义宽度
和高度
,例如:
<style>
#chart_div {
width: 80%;
height: 100%;
}
</style>
请参见我将在window.onresize=drawChart;中放置的确切位置;?它已经开始工作了。顺便说一句,即使没有样式也可以运行?图表的高度和宽度必须在图表的选项或应用于容器div的样式中定义(通过内联样式或CSS)。高度和宽度的图表选项只使用整数值-它们不能使用百分位数-所以如果你不想对容器div进行样式化,你就必须改变每个选项中所传递的值。好吧,但是如果我想删除图表中两边的空白,那我怎么办?
...
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
window.addEventListener('resize', function() {
chart.draw(data, options);
}, false);
}