R 使用ggplot2绘制多个饼图

R 使用ggplot2绘制多个饼图,r,ggplot2,visualization,bigdata,pie-chart,R,Ggplot2,Visualization,Bigdata,Pie Chart,我试图在ggplot2中绘制5625(75*75);这需要时间,而且最后的情节质量相对较低。有没有其他选择,来策划这样的事情 mydata = data.frame(side1=rep(colnames(cmap75),3,each=231),side2=rep(colnames(cmap75),231,each=3),widget=rep(colnames(cmap75),1),size=rep(1/3,231*3),strength=runif(3*231,-1,1)) ggplot(my

我试图在ggplot2中绘制5625(75*75);这需要时间,而且最后的情节质量相对较低。有没有其他选择,来策划这样的事情

mydata = data.frame(side1=rep(colnames(cmap75),3,each=231),side2=rep(colnames(cmap75),231,each=3),widget=rep(colnames(cmap75),1),size=rep(1/3,231*3),strength=runif(3*231,-1,1))

ggplot(mydata, aes(x="",y = size, fill = strength, width = widget)) +
geom_bar(width = 1) + 
facet_grid(side1 ~ side2) +
scale_x_discrete("",breaks=NULL) + 
coord_polar("y") + scale_fill_gradient2() +
scale_y_continuous("",breaks=NULL)+ geom_point() +
theme(panel.grid=element_blank(),panel.border=element_blank())+theme(panel.margin=unit(0,"mm"))
ggsave("ggplot1.pdf", width=20, height=20)
colnames(cmap75)
,只是字符串的向量; 下面是一个较小的示例

mydata = data.frame(side1=rep(LETTERS[1:6],3,each=18),side2=rep(LETTERS[1:6],18,each=3),widget=rep(LETTERS[1:6],1),size=rep(1/3,18*3),strength=runif(3*18,-1,1))

我的第一个直觉反应是,你只是试图一次绘制太多的数据。尝试并想出减少数据集的方法(在维度上聚合,对数据进行子集)以克服此问题。此外,关于低质量的抱怨无法在我的机器上复制,至少如果“质量”指的是低分辨率。您使用的是哪台机器,
capabilities()
返回什么?如果问题仅仅是任务不能放在“一张纸”上,那么除了建议一个额外的方面,我们如何解决它呢。我确实相信刻面可以有一个页面维度以及行和列。@PaulHiemstra Hiemstra好吧,我不能减少大小,因为我认为它是一次演示3个相关矩阵的最佳方式。每个饼图表示两个变量的相似性,每个饼图都是计算相似性的不同方法。饼图通常不是一个好主意,因为它们有主要的感知问题,例如。正如你所说的,饼图的大小并不重要,如果你真的想使用饼图,那么值得重新思考。我只能在这里重复Hiemstra-不要添加不添加信息的视觉功能。使用条形图而不是饼图,因为比较长度比比较饼图大小(或颜色,如您的情况)容易得多。因此,我建议使用如下绘图代码:
ggplot(mydata,aes(x=widget,y=strength))+geom_-bar(width=1)+facet_-grid(side1~side2)