Google chart - ลบแถวออกจาก data.cache JSFiddle

Nov 30 2020

งานคือแสดงเฉพาะ 5 ระเบียนสุดท้ายใน Google chart ในขณะที่คุณเลื่อนแถบเลื่อนข้อมูลจะเพิ่มขึ้น บันทึกมาจาก "แถบเลื่อน" บางส่วนในภายหลังจะถูกแทนที่ด้วยข้อมูล Senzor ที่ใช้งานอยู่

hAxis คือการประทับเวลาดังนั้นฉันจึงไม่รู้วิธีใช้:

 viewWindowMode: 'explicit',
                // viewWindow: {
                //   min: 0,
                //   max: 4
                // },

คำถามหว่านคือจะลบแถวออกจากแคชข้อมูลได้อย่างไร?

JSFiddle :https://jsfiddle.net/ejovrh2/k59u6be3/17/

คำตอบ

1 WhiteHat Nov 30 2020 at 19:25

เมื่อใช้การประทับเวลาบนแกน x
คุณสามารถใช้วัตถุวันที่ได้โดยตรงโดยไม่จำเป็นต้องแปลงเป็นสตริง

var data = google.visualization.arrayToDataTable([
  ["Date", "level"],
  [new Date(), level],
]);

และเพื่อควบคุมช่วงที่แสดงบนแกน x ค่า
viewWindowต่ำสุด & สูงสุดควรเป็นชนิดข้อมูลเดียวกัน
ในกรณีนี้คือวันที่

viewWindow: {
  min: new Date(2020, 10, 1),
  max: new Date(2020, 10, 30)
},
ejovrh2 Dec 04 2020 at 16:34

ดังที่ @WhiteHat กล่าวว่าคุณสามารถใช้ data.getColumnRange แล้วแยก min & max

ในกรณีของฉันฉันต้องแสดงบันทึกล่าสุดไม่กี่วัน ดังนั้นฉันจึงต้องการโค้ดส่วนนี้:

data.removeRow(0); 

ตอบ

    // 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);
    }

ซอฟินแลนด์