2011-12-18 4 views
1

現在、Androidアプリケーション内にグラフを描画しようとしています。私が見つけたライブラリはGraphView(http://www.jjoe64.com/p/graphview-library.html)です。私は現在GitHubで利用可能なバージョン2を使用しています。Android GraphView 2(ラベルなし)

グラフを実際にうまく描くことができます。グラフを取得するために必要なコードは次のとおりです。

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    Map<String,List<GraphEntry>> graphData = (...) 

    if (graphData != null) { 
     List<GraphEntry> entries = graphData.get("temperature"); 
     GraphView.GraphViewData[] data = new GraphView.GraphViewData[entries.size()]; 

     int i = 0; 
     for (GraphEntry entry : entries) { 
      data[i++] = new GraphView.GraphViewData(entry.getDate().getTime(), entry.getValue()); 
     } 
     GraphView.GraphViewSeries graphViewSeries = new GraphView.GraphViewSeries("temperature", 0xffff0000, data); 
     LineGraphView graphView = new LineGraphView(this, "temperature"); 
     graphView.addSeries(graphViewSeries); 
     graphView.setShowLegend(true); 

     LinearLayout graphLayout = (LinearLayout) findViewById(R.id.layout); 
     graphLayout.addView(graphView); 
    } 
} 

これは通常のグラフを生成します。残念ながら、すべての種類のラベルがありません。ドキュメントは、通常のユースケースでは、ライブラリが自動的にラベルを処理するので、ラベルを気にする必要がないことを示しています。私は間違って何をしていますか?私はラベルのないプレーングラフしか得られません。

完全性のために、グラフを線形レイアウトに追加しています。適切なレイアウトファイルには、次のような内容があります。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="match_parent" 
      android:layout_height="fill_parent" 
      android:padding="5dp" 
      android:id="@+id/layout" 
      android:orientation="vertical" 
    ></LinearLayout> 

GraphEntryクラスは、java.util.Date属性とダブルvalue属性を持つ唯一のコンテナです。 AChartEngine

は、私は別のグラフ作成エンジンに切り替え

マティアス

+0

このグラフライブラリをプロジェクトにどのように実装しましたか? – mAc

+0

こんにちは。代わりにAChartEngineを使用しました(http://www.achartengine.org/)。アプリケーションに実装する方法については、かなり良いチュートリアルがあります。 Matthias – user1050133

+0

+1、Thanks Buddy :) – mAc

答えて

1

、任意の助けをありがとうございました。これは箱から出てきます。

1

私は同じ問題がありました。これは、マニフェストファイルから次の行を削除することで解決できます。

android:theme="@style/AppTheme" 

これはかなり曖昧ですが、私のために働いています。私はこれがなぜ起こるのか正確な理由はありません。もしあなたがもっと良い解決策を見つけたら、それを分かち合いましょう。

+0

奇妙だが、これも私の問題を解決した。 –

1

githubの最新バージョンを使用してプロジェクトに組み込む必要があります。これにより、さまざまな色を設定することができます

graphView.getGraphViewStyle().setGridColor(Color.GREEN); 
graphView.getGraphViewStyle().setHorizontalLabelsColor(Color.YELLOW); 
graphView.getGraphViewStyle().setVerticalLabelsColor(Color.RED); 
関連する問題