作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
是否有某种方法可以使用 ggplot2 中的特定小图像作为散点图中的点。理想情况下,我希望根据变量调整图像大小。
这是一个例子:
library(ggplot2)
p <- ggplot(mtcars, aes(wt, mpg))
p + geom_point(aes(size = qsec, shape = factor(cyl)))
所以我基本上想知道是否有办法提供特定图像作为形状?
最佳答案
有一个名为ggimage
的库可以做到这一点。请参阅intro vignette here
您只需在 data.frame
中添加一个包含图像地址的列,该图像可以存储在网络上或本地计算机上,然后您就可以使用 geom_image()
:
library("ggplot2")
library("ggimage")
# create a df
set.seed(2017-02-21)
d <- data.frame(x = rnorm(10),
y = rnorm(10),
image = sample(c("https://www.r-project.org/logo/Rlogo.png",
"https://jeroenooms.github.io/images/frink.png"),
size=10, replace = TRUE)
)
# plot2
ggplot(d, aes(x, y)) + geom_image(aes(image=image), size=.05)
ps。请注意,ggimage 取决于 EBImage 。因此,要安装gginamge
,我必须这样做:
# install EBImage
source("https://bioconductor.org/biocLite.R")
biocLite("EBImage")
# install ggimage
install.packages("ggimage")
关于r - 如何在ggplot中使用图像作为点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2181902/
我是一名优秀的程序员,十分优秀!