我想创建一个只显示y轴(包括网格,数字和标签)的图。 但我不想显示情节或x轴。
这可能吗?
答案 0 :(得分:8)
创建绘图时,您只需指定几个选项即可。请特别注意axes
,type
和xlab
:
plot(runif(10), runif(10),
xlim=c(0, 1), ylim=c(0,1),
axes=FALSE, #Don't plot the axis
type="n", #hide the points
ylab="", xlab="") #No axis labels
然后您可以手动添加y轴:
axis(2, seq(0, 1, 0.2))
并根据需要添加网格
grid(lwd=2)
答案 1 :(得分:2)
您可以使用geom_blank()
和主题调整来关闭不需要的元素:
p <- ggplot(mtcars, aes(disp, mpg)) + geom_blank()
p + theme(axis.line.x=element_blank(),
axis.text.x=element_blank(),
axis.ticks.x=element_blank(),
axis.title.x=element_blank(),
panel.grid.minor.x=element_blank(),
panel.grid.major.x=element_blank())
或者,如果您已有绘图,则可以使用gtable
:
library(gtable)
g <- ggplotGrob(p)
s <- gtable_filter(g, 'axis-l|ylab', trim=F) # use trim depending on need
grid.newpage()
grid.draw(s)
答案 2 :(得分:0)
您可以简单地使用plot.new()
。
plot.new()
axis(2, seq(0, 1, 0.2))
grid(led = 2)
# etc