我有一个圆形图,我想找到一种方法来去除中间的白色小圆圈。
这是我的代码:
ggplot(d5)+geom_tile(aes(x=x, y=y, fill=xyz))+
scale_y_continuous(expand=c(0,0),breaks=NULL,limits=c(0,3.6))+
scale_fill_continuous(low="darkgreen", high="white")+
coord_polar(start=-1*pi/2, direction=1)+
theme_bw()+
theme(panel.grid.major = element_blank(),panel.grid.minor = element_blank())
非常感谢。
最佳答案
我在这里做了一个虚拟示例:
require(dplyr)
expand.grid(x = 1:20, y = 1:2) %>%
mutate(z = rnorm(length(x))) %>%
ggplot()+geom_tile(aes(x=x, y=y, fill=z))+
scale_y_continuous(expand=c(0,0),breaks=NULL,limits=c(0,3.6))+
scale_fill_continuous(low="darkgreen", high="white")+
coord_polar(start=-1*pi/2, direction=1)+
theme_bw()+
theme(panel.grid.major = element_blank(),panel.grid.minor = element_blank())
您使用
limits
的 expand
和 scale_y
参数走在正确的轨道上,您只需要弄清楚实际下限在哪里。为此,让我们在没有 coord_polar
和 scale_y
的情况下绘制相同的集合。因此,在我的示例中,图块的最小边缘位于
y=0.5
处。因此,您必须弄清楚您的最小 y
值是多少,然后减去 height
的默认 geom_tile
的一半(即 1)。使用该值作为 y
下限,你的馅饼中的洞就会消失。关于删除中央白色圆圈?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44593112/