我正在设计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)的演变。因此,最好在叠加图中显示。
ggplot2
使用的逻辑很有用,因为它显示了各阶段的演变。我试图用包中的交互式函数复制相同的图,例如googleVis
,rcharts
,rHighcharts
和ggvis
,但我无法获得同样的结果。此外,这些软件包中的一些功能无法显示进化。
我想用交互式元素构建一个类似的图形,以便为闪亮的应用程序提供更好的方面。 dput()
的{{1}}版本是下一个:
Data
非常感谢你的帮助。