Ответ 1
Как указано в comment, вы можете использовать роль аннотации для этого.
Исходный код:
var data = google.visualization.arrayToDataTable([
['time', 'value'],
['12:00', 1],
['13:00', 5],
['14:00', 8],
['15:00', 12],
['16:00', 11],
['17:00', 15],
]);
new google.visualization.LineChart(document.getElementById('visualization')).
draw(data, {});
Вам нужно добавить два столбца - один для отметки аннотации, один для текста аннотации. Предполагая, что вы хотите два комментария в 14:00 и 16:00 для примера:
function drawVisualization() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'time');
data.addColumn('number', 'value');
data.addColumn({type: 'string', role:'annotation'});
data.addColumn({type: 'string', role:'annotationText'});
data.addRows([
['12:00', 1, null, null],
['13:00', 5, null, null],
['14:00', 8, 'A', 'This is Point A'],
['15:00', 12, null, null],
['16:00', 11, 'B', 'This is Point B'],
['17:00', 15, null, null],
]);
new google.visualization.LineChart(document.getElementById('visualization')).
draw(data, {});
}
Это результат:
Чтобы добавить asgallant solution для добавления точек в диаграмму, вы можете сделать следующее:
function drawVisualization() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'time');
data.addColumn('number', 'value');
data.addColumn('number', 'points');
data.addColumn({type: 'string', role:'annotation'});
data.addColumn({type: 'string', role:'annotationText'});
data.addRows([
['12:00', 1, null, null, null],
['13:00', 5, null, null, null],
['14:00', 8, 8, 'A', 'This is Point A'],
['15:00', 12, null, null, null],
['16:00', 11, 11, 'B', 'This is Point B'],
['17:00', 15, null, null, null],
]);
new google.visualization.LineChart(document.getElementById('visualization')).
draw(data, {
series: {
0: {
// set any applicable options on the first series
},
1: {
// set the options on the second series
lineWidth: 0,
pointSize: 5,
visibleInLegend: false
}
}
});
}
Вот результат: