Graphique Google - supprimer des lignes de data.cache JSFiddle
La tâche consiste à n'afficher que les 5 derniers enregistrements dans le graphique Google. Lorsque vous déplacez le curseur, à la fin, les données s'ajoutent. Les enregistrements proviennent d'un "slider", plus tard seront remplacés par des données live senzor.
hAxis est un horodatage donc je ne sais pas comment utiliser:
viewWindowMode: 'explicit',
// viewWindow: {
// min: 0,
// max: 4
// },
La question est de savoir comment supprimer des lignes du cache de données?
JSFiddle :https://jsfiddle.net/ejovrh2/k59u6be3/17/
Réponses
lorsque vous utilisez l'horodatage sur l'axe des x,
vous pouvez utiliser un objet date directement, pas besoin de le convertir en chaîne.
var data = google.visualization.arrayToDataTable([
["Date", "level"],
[new Date(), level],
]);
et pour contrôler la plage affichée sur l'axe des x,
viewWindow
min et max doivent être du même type de données.
dans ce cas, une date.
viewWindow: {
min: new Date(2020, 10, 1),
max: new Date(2020, 10, 30)
},
Comme @WhiteHat l'a dit, vous pouvez utiliser data.getColumnRange, puis extraire min & max.
Dans mon cas, je n'ai besoin de montrer que les derniers enregistrements, peu importe les dates. J'avais donc besoin de cette partie de code:
data.removeRow(0);
Répondre
// when data is populated with 4 rows, remove first one [0]
if (data.cache.length>4){
data.removeRow(0);
// just to see range and how is removing first element
var dateRange = data.getColumnRange(0);
console.log(dateRange);
}
Violon finlandais