2011-12-29 40 views
1

我正在繪製GWT中的趨勢圖。具體來說,AnnotatedTimeLine。我的Java代碼是:註釋時間線中的日期和時間GWT

Runnable onLoadCallback = new Runnable() { 
     public void run() { 
      ArrayList<AttributeDTO> occAttrs = new ArrayList<AttributeDTO>(); 
      for(AttributeDTO attr : attrs){ 
       if(attr.getName().toLowerCase().contains("temp")){ 
        occAttrs.add(attr); 
       } 
      } 
      DataTable data = DataTable.create(); 
      data.addColumn(ColumnType.DATE, "Date"); 
      data.addColumn(ColumnType.NUMBER, "Temperature"); 
      data.addRows(occAttrs.size()); 
      RootPanel.get().add(new Label(occAttrs.toString())); 
      DateTimeFormat dtf = DateTimeFormat.getFormat("yyyy.MM.dd 'at' hh:mm:ss aaa"); 
      for(int i = 0; i < occAttrs.size(); i++){ 
       data.setValue(i, 0, dtf.parse(occAttrs.get(i).getDate())); 
       data.setValue(i, 1, Integer.valueOf(occAttrs.get(i).getValue())); 
      } 

      AnnotatedTimeLine.Options options = AnnotatedTimeLine.Options.create(); 
      options.setDisplayAnnotations(true); 
      options.setDisplayZoomButtons(true); 
      options.setScaleType(AnnotatedTimeLine.ScaleType.ALLFIXED); 
      options.setDateFormat("yyyy.MM.dd 'at' hh:mm:ss aaa"); 
      options.setLegendPosition(AnnotatedTimeLine.AnnotatedLegendPosition.SAME_ROW); 
      AnnotatedTimeLine atl = new AnnotatedTimeLine(data, options, "600px", "400px"); 

      vPanel.add(atl); 
     } 

    }; 
    VisualizationUtils.loadVisualizationApi(onLoadCallback, AnnotatedTimeLine.PACKAGE); 

好吧,當我告訴我圖形得到如下圖所示:

enter image description here

在x軸我有沒有日期時間。我想包括時間。我怎麼能得到它?

在此先感謝!

王敬和聖誕快樂!

+0

我也試過ColumnType.DATETIME而不是ColumnType.DATE,但結果是一樣的 – 2011-12-29 11:42:55

回答

1

將格式設置爲MMMM dd,yyyy,然後嘗試或嘗試不設置任何格式。

+0

這是不可能的。列表occAttrs中的屬性日期是字符串類型。然後,我定義DateTimeFormat來獲取日期類型 – 2011-12-29 12:00:14

+0

我認爲保持數據或日期時間應該工作,只要日期對象傳遞。 根據文檔http://gwt-google-apis.googlecode.com/svn/javadoc/visualization/1.1/index.html,您可以直接設置數據對象 – 2011-12-29 12:01:30

+0

我傳遞一個Date對象,但它需要一個先前的解析,因爲是一個String屬性 – 2011-12-29 12:18:05

0

在google的api文檔中清楚地解釋了它僅支持DATE和datetime不受支持。

我面臨着將多個值存儲到同一日期的相同要求。你有沒有找到任何其他庫,它可以正確處理這個問題?