创建类似于ggplot2的交互式堆积图

时间:2015-05-11 01:39:02

标签: r rcharts ggvis googlevis

我正在设计R中的叠加图,以便将其添加到闪亮的应用程序中,但我想用交互式元素创建绘图。首先,我会描述情节。我有一个矩阵Data看起来像这样(我在最后一面添加dput()版本):

     A1   A2   B1  B2  C1
A1 2000 1500 1000 500 500
A2    0  100  100 200 400
B1    0    0   50 200 300
B2    0    0    0 100 200
C1    0    0    0   0 100

为了构建堆积图,我使用Data进行了一些操作:

library(reshape2)
library(ggplot2)
#Melting data
Melt.Data<-melt(Data)
Melt.Data<-transform(Melt.Data, Var1 = factor(Var1, colnames(Data)),
                      Var2 = factor(Var2, rownames(Data)))
Melt.Data$Var2=substring(Melt.Data$Var2,1,1)
#Plot
Plot=ggplot(Melt.Data, aes(x = Var1, y = value, fill = Var2)) +
  geom_bar(stat = "identity") + scale_y_continuous(labels = comma) +
  scale_fill_manual(values = rainbow(3))  
plot(Plot)

运行此代码后,我得到了下一个图形。该图的目的是显示不同阶段(A1,A2,B1,B2,C1)的3组(A,B,C)的演变。因此,最好在叠加图中显示。 enter image description here

ggplot2使用的逻辑很有用,因为它显示了各阶段的演变。我试图用包中的交互式函数复制相同的图,例如googleVisrchartsrHighchartsggvis,但我无法获得同样的结果。此外,这些软件包中的一些功能无法显示进化。

我想用交互式元素构建一个类似的图形,以便为闪亮的应用程序提供更好的方面。 dput()的{​​{1}}版本是下一个:

Data

非常感谢你的帮助。

0 个答案:

没有答案