2014-11-02 63 views
0

我需要關於如何僅基於名稱和標籤可視化表格的相似性的建議。 Pie爲我工作,但我需要展示某種相似性:例如tree3和tree10共享相同的功能 - 這裏是鏈接。我需要簡單的解決方案RCircos似乎正在做我所需要的,但我迷失在文檔中,可能我需要更簡單的東西。 謝謝!R:僅基於名稱和標籤可視化關係

name feature 
3 feature1 
10 feature1 
10 feature2 
3 feature2 
6 feature2 
7 feature2 
8 feature2 
3 feature3 
6 feature3 
1 feature3 
2 feature3 
2 feature3 
6 feature3 
10 feature3 
2 feature4 
3 feature4 
3 feature4 
10 feature4 
4 feature5 
5 feature5 
9 feature5 
10 feature5 
+0

RCircos是不是一個基本函數。如果它存在於包中,則需要命名該包。 (沒有鏈接。) – 2014-11-02 17:07:48

+0

我發現circlize有一個選項chordDiagram可以很好地完成這個技巧。但我正在尋找更好的選擇 – 2014-11-02 18:32:02

回答

2

我開始想我可以在'vcd'軟件包中給你看一個名爲'mosaic'的整潔可視化函數,但是效果並不好。原因如下:yoyu提供的數據對於正確使用繪圖程序來說太稀疏了。看看錶格的輸出:

require(vcd) # "visualizing categorical data" 
with(dat, table(name, feature)) 
#------------ 
    feature 
name feature1 feature2 feature3 feature4 feature5 
    1   0  0  1  0  0 
    2   0  0  2  1  0 
    3   1  1  1  2  0 
    4   0  0  0  0  1 
    5   0  0  0  0  1 
    6   0  1  2  0  0 
    7   0  1  0  0  0 
    8   0  1  0  0  0 
    9   0  0  0  0  1 
    10  1  1  1  1  1 

在我看來,這似乎是顯示少量數據的最佳方式。大量空白的「細胞」是需要了解的一個重要方面,並且可以立即看到具有多個值的少數細胞。

現在看看情節。上面的標籤很容易讓人誤解,因爲第一個名稱類別由其單一值的100%主導爲「feature3」。

png(); mosaic(with(dat, table(name, feature))); dev.off() 

enter image description here

而這持續了其他類別的命名標籤在任何合理的方式排隊。但是,如果這只是一個玩具數據樣本,並且實際日期更密集,則鑲嵌圖可能對顯示相同圖中的相對關聯和邊際比例非常有幫助。如果顛倒的參數的順序來table你「名」

enter image description here

一個更好一點的比例。但同樣的稀疏性導致缺乏標籤與價值的良好關聯。如果這實際上來自基於樹的分析,則應該顯示該樹,而不是抽象出沒有其基礎結構的要素的名稱。

+0

謝謝!我會添加顏色,這將是完美的。 – 2014-11-02 18:41:53

+0

我以爲你的回答比較好。 (你可以勾選你自己的答案。) – 2014-11-03 20:35:06

+0

它不適用於高清數據,我的表格要大得多。 – 2014-11-03 21:41:26

4

我發現了一個有趣的解決方案

dat <- read.table("dat.txt", header=T) 
dat <- with(dat, table(name, feature)) 
library(circlize) 
chordDiagram(as.matrix(dat), transparency = 0.5) 

enter image description here

+0

現在我需要找到一個函數來使顏色名稱變灰,同時保持特徵顏色不變。 – 2014-11-02 19:05:25