2011-12-29 8 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); 

まあ、私はグラフを表示したときに、私は次の図入手:私は時間なしの日付を持っているx軸で

enter image description here

を。私は時間を含んでいます。どうすれば入手できますか?

ありがとうございます!

キングとメリークリスマス!

+0

ColumnType.DATEの代わりにColumnType.DATETIMEを試しましたが、結果は同じです –

答えて

1

フォーマットをMMMM dd、yyyyに設定し、フォーマットを設定せずに試したり試したりしてください。

+0

これはできません。リストoccAttrsの属性日付は文字列型です。次に、DateTimeFormatを定義して日付型を取得します –

+0

日付オブジェクトを渡す限り、データを保持するか、datetimeが機能すると思います。 http://gwt-google-apis.googlecode.com/svn/javadoc/visualization/1.1/index.htmlのドキュメントに従って、データオブジェクトを直接設定することができます –

+0

私はDateオブジェクトを渡しますが、以前のものが必要です文字列属性であるために解析する –

0

GoogleのAPIドキュメントでは、DATEのみサポートされており、datetimeはサポートされていないことが明確に説明されています。

私は同じ日付に複数の値を格納するのと同じ要件に直面しています。この問題を正しく処理できる他のライブラリを見つけましたか?