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

时间:2012-09-20 18:10:26

标签: r ggplot2

This question演示如何将等式放入ggplot2 qplot。

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

我怎样才能创建一个空的ggplot2图,以便我可以将标签添加到空白画布中?

3 个答案:

答案 0 :(得分:36)

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 :(得分:4)

由于没有一个答案明确说明如何制作仅由标签组成的图,所以我认为我应该在现有答案的基础上进行张贴。

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

答案 2 :(得分:1)

如果要创建完全空白图,请使用以下代码:

ggplot() + theme_void()

无需定义数据框。