ggplot如何构造连环饼图

发布时间:2022-03-28 13:37:40 作者:iii
来源:亿速云 阅读:184

本篇内容介绍了“ggplot如何构造连环饼图”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

library("ggplot2")

library("scatterpie")

library("Cairo")

数据集构造:

mydata<-c(1,1,1,1,1,1,1,1,1,2,3,2,3,5,5,1,1,1,1,1,2,2,4,5,1,3,2,3,5,5,4,2,4,2,1,2,1,1,0.5,0.5)

Dummy<-5*seq(1:8)

mynewdata<-matrix(mydata,nrow=8,ncol=5,byrow=T)

colnames(mynewdata)<-c("S1","S2","S3","S4","S5")

mynewdata<-as.data.frame(mynewdata)

as.integer(mynewdata1$Year)

mynewdata1<-cbind(Year,Dummy,Data,mynewdata)

as.integer(mynewdata1$Dummy)

构造色盘:

color1<-c("#FF2D2D","#F79646","#4BACC6","#FFC000","#92D050")

color2<-c("#17375E","#23538D","#558ED5","#8EB4E3","#C6D9F1")

色盘1图表输出:

CairoPNG(file="C:/Users/Administrator/Desktop/scatterpie1.png",width=500,height=330)

ggplot()+

geom_line(data=mynewdata1,aes(x=Dummy,y=Data,group=1),col="#085264",size=.8)+

geom_scatterpie(data=mynewdata1,aes(x=Dummy,y=Data,r=2),cols=colnames(mynewdata1)[4:8],color=NA)+

ylim(0,25)+

scale_fill_manual(values=color1)+

scale_x_continuous(breaks=mynewdata1$Dummy,labels=c(2004:2011))+

guides( fill=guide_legend(label.position ="top"))+

theme(

axis.title=element_blank(),

legend.title=element_blank(),

panel.background=element_blank(),

axis.line=element_line(),

axis.ticks=element_line(),

legend.direction="horizontal",

legend.position=c(0.15,0.9),

)

dev.off()

ggplot如何构造连环饼图

色盘2输出:

CairoPNG(file="C:/Users/Administrator/Desktop/scatterpie2.png",width=500,height=330)

ggplot()+

geom_line(data=mynewdata1,aes(x=Dummy,y=Data,group=1),col="#085264",size=.8)+

geom_scatterpie(data=mynewdata1,aes(x=Dummy,y=Data,r=2),cols=colnames(mynewdata1)[4:8],color=NA)+

ylim(0,25)+

scale_fill_manual(values=color2)+

scale_x_continuous(breaks=mynewdata1$Dummy,labels=c(2004:2011))+

guides( fill=guide_legend(label.position ="top"))+

theme(

axis.title=element_blank(),

legend.title=element_blank(),

panel.background=element_blank(),

axis.line=element_line(),

axis.ticks=element_line(),

legend.direction="horizontal",

legend.position=c(0.15,0.9),

)

dev.off()

ggplot如何构造连环饼图

本来原始图表在案例中使用VBA写的,大体思路是在折线图对应点位置强制插入8个饼图对象。(就是对应八个点位置的饼图)思路虽好,可是VBA的笨拙语法操作起来实在不易,代码量巨大。

源案例代码截图:

ggplot如何构造连环饼图

而使用R语言,不算主题修饰成分,核心代码只有短短6行,由此可见R在图形操控方面的便利。

ggplot如何构造连环饼图

本例适用场景:

核心要点:

“ggplot如何构造连环饼图”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

推荐阅读:
  1. PieChart 饼图
  2. canvas如何绘制饼图

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

ggplot

上一篇:C++如何实现文本左右对齐

下一篇:C++如何实现加一运算

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》