Nth*_*ree 1 javascript charts date linechart google-visualization
我正在尝试使用以下类型的数据点构建折线图.每个数据点都包含以下数据:
这一点的一个例子是:(2015-01-15,'Value 1','Value 2')
我能够将这些数据带入具有两条独立线的折线图,一条用于值1,一条用于值2.
现在的问题是hAxis.我想让显示的数据具有动态的月份名称.如果我显示2015年1月到2015年3月的数据,我希望hAxis有3个部分:1月,2月,3月.
我尝试了以下方法:
hAxis: {
format: 'MM'
}
Run Code Online (Sandbox Code Playgroud)
这基本上是有效的,但它现在只用04,07和10将我的图形分为3个部分.我怎么能解决每个月,也存在于数据中,在hAxis中有月份名称('March'而不是'03').
这是问题的编码:http://codepen.io/anon/pen/XmXQEO 你怎么看,hAxis显示04,07,10而不是1月,2月,3月,4月,5月,6月,7月,八月,九月,十月,十一月,十二月.
编辑:Vadim Gremyachev提供了标签格式问题的解决方案,我必须使用'MMMM'来获得完整的月份名称.现在缺少的是使用所有月份,而不仅仅是3个月.
谢谢!
您可以设置hAxis.format
为MMMM
将标签显示为月份名称.您可以提供hAxis.ticks
手动指定X轴标签,以下示例演示如何显示所有月份标签
google.load('visualization', '1', { packages: ['corechart', 'line'] });
google.setOnLoadCallback(drawCurveTypes);
function drawCurveTypes() {
var data = new google.visualization.DataTable();
data.addColumn('date', 'Day');
data.addColumn('number', 'Value 1');
data.addColumn('number', 'Value 2');
data.addRows([
[new Date('2015-01-01'), 40, 50],
[new Date('2015-01-15'), 20, 80],
[new Date('2015-02-01'), 20, 80],
[new Date('2015-02-15'), 60, 30],
[new Date('2015-03-01'), 40, 50],
[new Date('2015-03-15'), 20, 80],
[new Date('2015-04-01'), 20, 80],
[new Date('2015-04-15'), 60, 30],
[new Date('2015-05-01'), 40, 50],
[new Date('2015-05-15'), 20, 80],
[new Date('2015-06-01'), 20, 80],
[new Date('2015-06-15'), 60, 30],
[new Date('2015-07-01'), 40, 50],
[new Date('2015-07-15'), 20, 80],
[new Date('2015-08-01'), 20, 80],
[new Date('2015-08-15'), 60, 30],
[new Date('2015-09-01'), 40, 50],
[new Date('2015-09-15'), 20, 80],
[new Date('2015-10-01'), 20, 80],
[new Date('2015-10-15'), 60, 30],
[new Date('2015-11-01'), 40, 50],
[new Date('2015-11-15'), 20, 80],
[new Date('2015-12-01'), 20, 80],
[new Date('2015-12-15'), 60, 30],
]);
var dateTicks = [];
for (var m = 1; m <= 12; m++)
dateTicks.push(new Date('2015-' + m + '-1'));
var options = {
hAxis: {
format: 'MMMM',
ticks: dateTicks
}
};
var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
Run Code Online (Sandbox Code Playgroud)
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<div id="chart_div"></div>
Run Code Online (Sandbox Code Playgroud)