如何使用ggplot2在极坐标中自定义背景?

时间:2019-05-15 05:23:46

标签: r ggplot2 background coordinates

使用ggplot绘制极坐标时,可以将图像自定义为背景吗? 我想加载本地图像作为图形的背景,还有其他方法吗?

我知道ggimage软件包中的ggbackground函数支持将自定义图像作为背景,但是使用Power BI将其发布到服务器的客户不支持ggimage软件包.ggplot中的Annotation_custom仅支持笛卡尔坐标。

library(ggimage)
library(tidyverse)
library(jpeg)
setwd("C:\\Users\\zhuang\\Downloads")
g<-readJPEG("QQ05.jpg")
g <- rasterGrob(g, interpolate=TRUE)

df<-read.csv("data.csv") %>% na.omit()  
p<-ggplot(df, 
       aes(x=spdl,y=bl,
           fill=factor(spdl)))+
  geom_bar(color="white",width=1,
           stat="identity",position="stack", 
           size=1.2)+
  coord_polar(theta = "x",start=2)+
  #annotation_custom(g, xmin=-Inf, xmax=Inf, ymin=-Inf, ymax=Inf)+
  theme(axis.title.x=element_blank(),  
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank())+
  scale_fill_manual(
    values =alpha(c("#7FFF00","#00FF7F","#6495ED","#00BFFF",
                    "#7FFF00","#7FFF00","#7FFF00","#7FFF00","#7FFF00"),1))+
  theme_bw(1)+ylim(-40,120)+
  theme_void()+  
  theme(legend.position = "none")

img <- "QQ05.jpg"  
ggbackground(p, img)

当我使用annotation_custom时,出现如下错误 错误:annotation_custom仅适用于笛卡尔坐标

但是,当我使用ggbackground函数时,可以达到效果。

0 个答案:

没有答案