前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言ggplot2气泡图叠加图片的简单小例子

R语言ggplot2气泡图叠加图片的简单小例子

作者头像
用户7010445
发布2021-08-31 17:43:04
1.2K0
发布2021-08-31 17:43:04
举报

image.png

之前有人在公众号留言问这幅图的实现办法,这个是气泡图,用ggplot2很方便能够实现,但是这个图比较特殊的是横坐标还有对应的图片,当然出图以后用其他软件来编辑是可以实现的,但是对齐之类的可能会比较麻烦。如果能用代码实现就能节省一些时间,正好最近看到一个ggplot2的扩展包 叫做 ggimg 对应的github的主页是 https://github.com/statsmaths/ggimg

下面我们就来试试能不能用这个包来实现推文开头的图

首先第一步是安装ggimg
代码语言:javascript
复制
install.packages("ggimg")
接下来我们运行一个简单的小例子

我将三张图片放到了当前目录下的 ggimg_example 文件夹下

代码

代码语言:javascript
复制
library(ggimg)
library(ggplot2)

ggplot()+
  geom_point_img(data=df,
                 aes(x=x,y=y,img=img),
                 size=5)+
  scale_x_continuous(limits = c(0.5,3.5))+
  theme_minimal()

image.png

接下来我们把职业生涯三分命中率的数据加进来用来做气泡图

结果如下

image.png

代码

代码语言:javascript
复制
df1<-data.frame(x=c("davisan","james","westbru"),
                y=c(31.2,34.5,30.5),
                img=list.files(path = "ggimg_example/",full.names = T))
df1
pdf(file = "ggimg_example/ggimg.pdf",
    width = 10,height = 8)
ggplot()+
  geom_point(data=df1,aes(x=x,y=y,size=y),
             fill="grey80",color="black",shape=21)+
  scale_size_continuous(range = c(5,15))+
  scale_y_continuous(limits = c(30,35),
                     expand = c(0,0))+
  theme_bw()+
  theme(plot.margin = unit(c(0.1,0.5,5,0.5),'cm'),
        axis.text.x = element_text(vjust=-1,
                                   angle = 60,
                                   size=20),
        axis.title = element_blank(),
        legend.position = "top",
        legend.title = element_blank())+
  geom_point_img(data=df1,aes(x=x,y=30,
                              img=img),
                 size=2,
                 vjust = 1)+
  coord_cartesian(clip = "off")
dev.off()

结束语:不知道威少搭配詹姆斯最后能出一个什么效果,之前记得有一个记录是 同一个队一场比赛中两个人同时拿三双 这个记录应该能被威少和詹姆斯预定了吧 哈哈哈哈

示例数据和代码直接在后台回复 20210730就可以获取了

欢迎大家关注我的公众号

小明的数据分析笔记本

小明的数据分析笔记本 公众号 主要分享:1、R语言和python做数据分析和数据可视化的简单小例子;2、园艺植物相关转录组学、基因组学、群体遗传学文献阅读笔记;3、生物信息学入门学习资料及自己的学习笔记!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-07-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小明的数据分析笔记本 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 首先第一步是安装ggimg
  • 接下来我们运行一个简单的小例子
  • 接下来我们把职业生涯三分命中率的数据加进来用来做气泡图
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档