我有一个数据文件按行组织,有x标签,y标签,然后是一个值。其基本结构是这样的:重新排列对角线以下的绘图值?
Factor_1,Factor_2,Number
apple,apple,1
banana,apple,1
apple,kiwi,6
apple,pear,1
watermelon,apple,8
banana,banana,3
banana,kiwi,2
banana,pear,1
banana,watermelon,9
kiwi,kiwi,9
pear,kiwi,4
kiwi,watermelon,4
pear,pear,3
pear,watermelon,9
watermelon,watermelon,1
...
...
利用这些数据,我使用这个代码建立一个相关矩阵一些类似于:
library(ggplot2)
library(reshape2)
d <- read.csv("my_file", head=TRUE, sep="\t")
x <- dcast(d, Factor_1~Factor_2)
x.m <- melt(x)
x.m <- ddply(x.m, .(variable))
(p <- ggplot(x.m, aes(variable, Factor_1)) + geom_tile(aes(fill = value), colour = "black") + scale_fill_gradient(low = "black", high = "green")
上面的代码给了我一个情节看起来像这样:
我怎样才能重新排序数据来构建与F曲线在所有数据分组在对角线以下的格式?
A B K P W
W 1
P 3 9
K 9 4 4
B 3 2 1 9
A 1 1 6 1 8
当我运行的代码和数据子集,你已经张贴产生一个情节,看起来就像你已经什么请求。您是否尝试过自己运行发布的示例?而且,在代码的最后一行中有一个右括号。 – 2012-01-05 18:31:15
@DWin - 第一个代码块的第二行是'apple,apple,1'。或者你的意思是不同的? – 2012-01-05 18:49:10
@ JoshO'Brien你是对的;事实上,水果的例子确实产生了期望的产出。在我的实际数据集中,x和y标签的顺序不正确。我更新了数据集来描述我的问题。请注意,有些行(例如'西瓜,苹果,8')出现故障。 – drbunsen 2012-01-05 19:01:18