如何在ggplot2中放大我的绘图宽度?

时间:2015-04-12 09:23:00

标签: r plot ggplot2

下面是我想要包含在论文中的情节。问题是我的情节宽度很小(这使得x-axix根本不可读)

这是ggplot2代码myCode.r

require("ggplot2")

all <- read.csv(file="benchmark/bench.query.csv", head=TRUE, sep=";")

w <- subset(all, query %in% c("sort.q1", "sort.q2", "sort.q3", "sort.q4", "sort.q5"))

w$rtime <- as.numeric(sub(",", ".", w$rtime, fixed=TRUE))

p <- ggplot(data=w, aes(x=query, y=rtime, colour=triplestore, shape=triplestore))
p <- p + scale_shape_manual(values = 0:length(unique(w$triplestore)))
p <- p + geom_point(size=4)
p <- p + geom_line(size=1,aes(group=triplestore))
p <- p + labs(x = "Requêtes", y = "Temps d'exécution (log10(ms))")
p <- p + scale_fill_continuous(guide = guide_legend(title = NULL))
p <- p + facet_grid(trace~type)
p <- p + theme_bw()

ggsave(file="bench_query_sort.pdf")

print (p)

我环顾四周看看如何扩大情节,但我一无所获。

有关在我的代码中添加/删除/修改内容的任何想法吗?

plot

3 个答案:

答案 0 :(得分:12)

可能最简单的方法是使用图形设备(png,jpeg,bmp,tiff)。您可以按如下方式设置图像的确切宽度和高度:

png(filename="bench_query_sort.png", width=600, height=600)

ggplot(data=w, aes(x=query, y=rtime, colour=triplestore, shape=triplestore)) + 
  scale_shape_manual(values = 0:length(unique(w$triplestore))) + 
  geom_point(size=4) + 
  geom_line(size=1,aes(group=triplestore)) + 
  labs(x = "Requêtes", y = "Temps d'exécution (log10(ms))") + 
  scale_fill_continuous(guide = guide_legend(title = NULL)) + 
  facet_grid(trace~type) + 
  theme_bw()    

dev.off()

widthheight以像素为单位。在准备用于在互联网上发布的图像时,这尤其有用。有关详细信息,请参阅包含?png的帮助页面。

或者,您也可以使用ggsave来获取所需的确切尺寸。您可以使用以下方式设置尺寸:

ggsave(file="bench_query_sort.pdf", width=4, height=4, dpi=300)

widthheight以英寸为单位,dpi可以设置图片的质量。

答案 1 :(得分:12)

在Jupyter笔记本中,我发现以下帮助:

# Make plots wider 
options(repr.plot.width=15, repr.plot.height=8)

答案 2 :(得分:2)

如果您使用 RMD(R Markdown),这将是定义宽度和高度的最简单方法。

"\\right\\}"

注意: ```{r fig.align="center", echo = FALSE,fig.width = 14} <write the code for your plot here> ``` 对我不起作用,所以我使用了这种方法