Google 设置分钟范围而不是日期的时间轴图表
Google Timeline chart for set range of minutes instead of dates
我希望使用 Google 图表时间轴来显示几分钟而不是日期。我并不是说将比例限制在一天中的几分钟内。我的意思是只显示 0:00 作为开始,然后像 5:00 这样的东西作为结束时间,中间有一定的秒数。
我找到了很多示例(例如,http://almende.github.io/chap-links-library/js/timeline/doc/),但与我正在寻找的完全不同。所有示例都使用 datetime 或 timeofday,但似乎没有将比例限制为任意持续时间。我想要的所有其他功能都在那里(缩放、事件监听器、HTML 注释、JSON 输入等),
是否可以自定义我想要的比例?甚至隐藏它?
顺便说一句——这是一个 Angular (4) 项目,所以我使用 angular2-google-chart 模块从 TypeScript 访问 Google 图表。如果有另一个 Angular 组件更适合,我很想听听。
只需对所有行使用相同的日期 -- 开始/结束日期
只调整日期对象的seconds
部分
new Date(year, month, date, hours, minutes, seconds);
请参阅以下工作片段...
google.charts.load('current', {
callback: drawChart,
packages: ['timeline']
});
function drawChart() {
var container = document.getElementById('timeline');
var chart = new google.visualization.Timeline(container);
var dataTable = new google.visualization.DataTable();
dataTable.addColumn({type: 'string', id: 'Category'});
dataTable.addColumn({type: 'date', id: 'Start'});
dataTable.addColumn({type: 'date', id: 'End'});
dataTable.addRows([
['A', new Date(2017, 4, 26, 10, 0, 1), new Date(2017, 4, 26, 10, 0, 2)],
['B', new Date(2017, 4, 26, 10, 0, 2), new Date(2017, 4, 26, 10, 0, 3)],
['C', new Date(2017, 4, 26, 10, 0, 3), new Date(2017, 4, 26, 10, 0, 4)]
]);
chart.draw(dataTable, {
hAxis: {
format: 'mm:ss',
maxValue: new Date(2017, 4, 26, 10, 0, 5),
minValue: new Date(2017, 4, 26, 10, 0, 0)
}
});
}
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="timeline"></div>
我希望使用 Google 图表时间轴来显示几分钟而不是日期。我并不是说将比例限制在一天中的几分钟内。我的意思是只显示 0:00 作为开始,然后像 5:00 这样的东西作为结束时间,中间有一定的秒数。
我找到了很多示例(例如,http://almende.github.io/chap-links-library/js/timeline/doc/),但与我正在寻找的完全不同。所有示例都使用 datetime 或 timeofday,但似乎没有将比例限制为任意持续时间。我想要的所有其他功能都在那里(缩放、事件监听器、HTML 注释、JSON 输入等),
是否可以自定义我想要的比例?甚至隐藏它?
顺便说一句——这是一个 Angular (4) 项目,所以我使用 angular2-google-chart 模块从 TypeScript 访问 Google 图表。如果有另一个 Angular 组件更适合,我很想听听。
只需对所有行使用相同的日期 -- 开始/结束日期
只调整日期对象的seconds
部分
new Date(year, month, date, hours, minutes, seconds);
请参阅以下工作片段...
google.charts.load('current', {
callback: drawChart,
packages: ['timeline']
});
function drawChart() {
var container = document.getElementById('timeline');
var chart = new google.visualization.Timeline(container);
var dataTable = new google.visualization.DataTable();
dataTable.addColumn({type: 'string', id: 'Category'});
dataTable.addColumn({type: 'date', id: 'Start'});
dataTable.addColumn({type: 'date', id: 'End'});
dataTable.addRows([
['A', new Date(2017, 4, 26, 10, 0, 1), new Date(2017, 4, 26, 10, 0, 2)],
['B', new Date(2017, 4, 26, 10, 0, 2), new Date(2017, 4, 26, 10, 0, 3)],
['C', new Date(2017, 4, 26, 10, 0, 3), new Date(2017, 4, 26, 10, 0, 4)]
]);
chart.draw(dataTable, {
hAxis: {
format: 'mm:ss',
maxValue: new Date(2017, 4, 26, 10, 0, 5),
minValue: new Date(2017, 4, 26, 10, 0, 0)
}
});
}
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="timeline"></div>