2012-01-13 6 views
0

Prefuse Javaを使用して車のデータをテーブルに表示したいと考えています。 、重要なデータオブジェクトの3種類使用されています。Prefuse(Java)Tableを正しく視覚化するにはどうすればいいですか?

  1. PIT(特定時点)
  2. 値(ダブルとガスの消費量が含まれています)
  3. 車(カーを表すクラス)
  4. の例を使用して

    car1 | pit1 | value11 
    car1 | pit2 | value12 
    car1 | pit3 | value13 
    car2 | pit1 | value21 
    car2 | pit2 | value22 
    car2 | pit3 | value23 
    car3 | pit1 | value31 
    car3 | pit2 | value32 
    car3 | pit3 | value33 
    

だから最初に私はこのようなテーブルにそれらを置きますPrefuse project私は、pit1、pit2、pit3というラベルの付いたx軸と正しい値の異なる値を持つy軸を持つテーブルの視覚化を作成することができました。

しかし、何時間も試したことは、ピット1と値11が「出会う」car1の赤い四角形のように、ちょっとした四角形を描くことです。

どうすればよいですか?

PS:私はまた、次のようにy軸を改善する方法を知りたい:

最低値を想像してみては2.6で、最高は32.0です。 今やy軸は2.6から始まり、すべての値(実際の差異にかかわらずラベル間に同じスペースを持つ)に32.0までのラベルを付けるだけです。 ラベルは0.0(または2.0)で始まり、その後35のステップで5を使用することが好ましいでしょう。

+0

あなたが既に持っているコードを掲載場合には役立つだろうワーキング。 –

答えて

2

x軸にPITを含む散布図を作成し、 y軸上の値、およびマークの色としてのCar(=四角形)です。

私が正しく理解していれば、軸のラベルは見えますが、印はありません。

マークを表示するには、アクションリストにColorActionを追加する必要があります。たとえば、次のように

ColorAction color = new ColorAction("data", VisualItem.STROKECOLOR, 
       ColorLib.rgb(100, 100, 255)); 

それとも、車に応じて、異なる色のマークを視覚化することができますDataColorActionを、使用します。

ColorAction color = new DataColorAction("data", "Car", 
       Constants.NOMINAL, VisualItem.FILLCOLOR); 

y軸について:プレフューズは、すべてのラベルを描画し、実際の違いを無視します変数(ここではValue)をdoubleとして読み取ることができない場合DoubleまたはStringとして保存されているかどうかを確認してください。 、あなたがレンジモデルを設定することができます0.0で開始する場合:

y_axis.setRangeModel(new NumberRangeModel(0, 40, 0, 40)); 

PSを:私はプレフューズの散布図のためのチュートリアルを書きました:http://www.ifs.tuwien.ac.at/~rind/w/doku.php/java/prefuse-scatterplot

関連する問題