簡體   English   中英

如何正確顯示Prefuse(Java)表?

[英]How to visualize a Prefuse (Java) Table correctly?

我想通過Prefuse Java可視化表中汽車的一些數據。 使用了三種重要的數據對象:

  1. PIT(時間點)
  2. 價值(包含雙重燃氣消耗量)
  3. 汽車(代表汽車的類)

所以首先我把它們放到這樣的表中:

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項目中的示例,我能夠創建一個表格的可視化,其中x軸標記為pit1,pit2和pit3,y軸具有正確順序的不同值。

但是我幾個小時試過的是以某種方式在相應的位置繪制小方塊(如car1的紅色方塊,其中pit1和value11“相遇”)。

我該怎么做呢?

PS:我也想知道如何通過以下方式改善y軸:

想象一下,最低值是2.6,最高值是32.0。 現在,y軸將從2.6開始,只標記每個值(標簽之間的空格相同,無論實際差異),最高為32.0。 我更喜歡的是標簽從0.0(或2.0)開始,然后使用5左右的步驟直到35。

您希望在散點圖中可視化表格,其中x軸為PIT,y軸為值,Car為標記的顏色(=矩形)。

如果我理解正確,您會看到軸標簽,但沒有標記。

您需要將ColorAction添加到操作列表中才能查看標記。 例如:

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

或者使用DataColorAction ,它允許您根據Car顯示不同顏色的標記:

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

關於y軸:prefuse繪制每個標簽並忽略實際差異,如果它不能將變量(此處:值)讀取為double。 請檢查它是否存儲為DoubleString 如果您想從0.0開始,您可以設置范圍模型:

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

PS:我已經為prefuse散點圖編寫了一個教程: http ://www.ifs.tuwien.ac.at/~rind/w/doku.php/java/prefuse-scatterplot

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM