2011-07-30 4 views
2

JPanelを拡張している人のクラスの内部に統計データをグラフ化する必要があります。今の計画は、次のようにpaintComponentGraphicsクラスを使用することです:JPanelではこのようにグラフを作成できますか?

public void paintComponent(Graphics g) { 
    super.paintComponent(g); 

    //create a rectangle to represent the outline of the graph 
    g.drawRect(300, 50, 400, 350); 

    //set up the datapoints 
    for(int i = 0; i < data.size(); i++) { 
     //put the datapoints where ever they need to go within this rectangle 
     g.drawOval(x, y, width, height); 
    } 
} 

は、何らかの理由でこの恐ろしいですか?もっと重要なのは、使えそうなグラフライブラリがありますが、わかりません。

ありがとうございました。

答えて

3

あなたのコードは、私には楕円形が集中しているように、おそらく

for(int i = 0; i < data.size(); i++) { 
    g.drawOval(data.get(i).getX() - width/2, data.get(i).getY() - height/2, 
     width, height); 
} 

であなたのxとyのポイントを配置以外のOKに見えます。

また、プロットされた点がグラフのドメインと範囲の境界内にとどまるようにデータを変換することも考えてください。さもなければ、矩形の外側に楕円を持つことができます。

グラフ化ライブラリについては、JFreeChartを参照してください。タグ:

関連する問題