0
annotatedtimelines의 문제를 처리하고 있습니다. 사용자가있는 탭에 따라 차트를 그려야하므로 탭을 변경하면 현재 차트를 지우고 새 데이터를 그립니다. 그러나 그것을하는 방법?AnnotatedTimeline gwt 시각화 차트를 정리하는 방법
지금은 모든 행을 제거하지만 작동하지 않습니다. 누군가 나를 도울 수 있습니까? 그것은 매우 이상하다 , 마우
...
//Creating Columns
dataTable.addColumn(ColumnType.DATETIME, "Time");
dataTable.addColumn(ColumnType.NUMBER, "Realtime Consumption");
dataTable.addColumn(ColumnType.NUMBER, "Historical Consumption");
//Create options
options.setDisplayAnnotations(false);
options.setDisplayZoomButtons(false);
options.setScaleType(AnnotatedTimeLine.ScaleType.FIXED);
options.setLegendPosition(AnnotatedTimeLine.AnnotatedLegendPosition.SAME_ROW);
options.setAllowRedraw(true);
options.setDisplayRangeSelector(false);
options.setFill(30);
//to parse the time
DateTimeFormat dtf = DateTimeFormat.getFormat("hh:mm:ss");
//For each item of the list
for(int i = 0; i < list.size(); i++){
//get date
Date date = new Date(list.getTimeAt(i));
//get hh:mm:ss
String time = date.getHours()+":"+date.getMinutes()+":"+date.getSeconds();
//add row
dataTable.addRow();
dataTable.setValue(dataTable.getNumberOfRows() - 1, 0, dtf.parse(time));
dataTable.setValue(dataTable.getNumberOfRows() - 1, 2, list.getDataAt(i));
}
/**
* To clean the chart
*/
public void cleanChart(){
//Remove all rows
this.dataTable.removeRows(0, dataTable.getNumberOfRows());
//Redraw the chart
this.draw(this.dataTable, this.options);
}
감사합니다,하지만 난 (내가 다른 데이터 테이블을 만들 것 때문이 좋아 보인다)을했다 : 여기
코드입니다 여전히 작동하지 않습니다. 이전 데이터는 계속됩니다. 나는 AnnotatedTimeLine를 확장하는 클래스를 가지고 있고, 청소 방법은 지금 :/**
* Method to clean the annotated time line
*/
public void clean() {
//Create new table
this.dataTable = DataTable.create();
//Create columns
this.dataTable.addColumn(ColumnType.DATETIME, "Time");
this.dataTable.addColumn(ColumnType.NUMBER, "Data 1");
this.dataTable.addColumn(ColumnType.NUMBER, "Data 2");
//Redraw the chart with the same options
this.draw(this.dataTable, this.options);
}
어떤 생각?
감사합니다.
같은 뭔가를
this.dataTable.removeRows(0, dataTable.getNumberOfRows());
을 수행 할 필요가 없습니다 '공공 무효 깨끗한() { // 새 테이블 만들기 DataTable dataTable = DataTable.create(); // 열 만들기 this.dataTable.addColumn (ColumnType.DATETIME, "Time"); this.dataTable.addColumn (ColumnType.NUMBER, "Data 1"); this.dataTable.addColumn (ColumnType.NUMBER, "Data 2"); // 동일한 옵션을 사용하여 차트 다시 그리기 this.draw (dataTable, this.options); }' – Munawar
아직 작동하지 않습니다 .. 'public void clean() { DataTable data = DataTable.create(); data.addColumn (ColumnType.DATETIME, "Time"); data.addColumn (ColumnType.NUMBER, "Realtime Consumption"); data.addColumn (ColumnType.NUMBER, "Historical Consumption"); this.draw (data, this.options); this.dataTable = data; } ' – banduk
아무도 아이디어가 없습니다 ??? – banduk