我可以在R中创建一个空的ggplot2图吗?

52

这个问题演示了如何将一个方程放入 ggplot2 qplot 中。

q <- qplot(cty, hwy, data = mpg, colour = displ)
q + xlab(expression(beta +frac(miles, gallon)))

如何创建一个空的ggplot2图形,以便可以在空白画布上添加标签?

3个回答

53
df <- data.frame()
ggplot(df) + geom_point() + xlim(0, 10) + ylim(0, 100)

根据@ilya的建议,geom_blank非常适合在已有数据时,可以基于数据设置比例尺而不是显式定义比例尺。

ggplot(mtcars, aes(x = wt, y = mpg)) + geom_blank()

1
是的,那个方法可行,我想那回答了我的问题。我想我本应该问的问题是如何创建一个仅包含标签的图表。 - Jim

49
ggplot() + theme_void()

不需要定义数据框。


16

由于没有一个答案明确说明如何制作只包含标签的图表,所以我想在现有答案的基础上发布这个方法。

ggplot2中:

ggplot() +
    theme_void() +
    geom_text(aes(0,0,label='N/A')) +
    xlab(NULL) #optional, but safer in case another theme is applied later

生成这个图表:

enter image description here

标签将始终出现在中心,无论绘图窗口的大小如何调整。

cowplot中:

cowplot::ggdraw() +
    cowplot::draw_label('N/A')

ggdraw()生成一个空白图,而draw_label在其中央绘制一个标签:

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接