1

で同じプロットに 2 行の char をプロットしたいggplot2。grid.arrange を使用して実行できることは承知していますが、コードに何かが欠けていることは確かです。

これが私のデータです。時間と率の両方をプロットしたい場所です

motor;trace;time;rate
monetDBIE;1m;5448;183553
monetDBIE;2m;8734;228990
monetDBIE;5m;19468;256831
Jena;1m;8273;120875
Jena;2m;16916;118231
Jena;5m;44776;111666
PGSQLIE;1m;6859;145793
PGSQLIE;2m;13106;152601
PGSQLIE;5m;32793;152471

そして、ここに私のコードがあります

require("ggplot2")
require("gridExtra")

w <- read.csv(file="loading.csv", head=TRUE, sep=";")

# first plot
p <- ggplot(data=w, aes(x=trace, y=time, colour=motor, shape=motor))

p <- p + geom_point(size=4)

p <- p + geom_line(size=1,aes(group=motor))

p <- p + geom_text(aes(label=time), hjust=-0.2, vjust=1)

p <- p + ggtitle("Triplestores ")

p <- p + labs(x = "Traces", y = "Temps (ms)")

p <- p + theme_bw()

# second plot
p2 <- ggplot(data=w, aes(x=trace, y=rate, colour=motor, shape=motor))

p2 <- p2 + labs(x = "Traces", y = "débit de chargement (triplets/s)")

p2 <- p2 + geom_point(size=4)

p2 <- p2 + geom_line(size=1,aes(group=motor))

p2 <- p2 + geom_text(aes(label=rate), hjust=-0.2, vjust=1)

p2 <- p2 + theme_bw()

grid.arrange(p, p2, nrow=2, ncol=1)

ggsave(file="loading.pdf")

しかし残念なことに、まだ char p2 が 1 つしか表示されません。画像を参照してください。ここに画像の説明を入力

なんで ?

4

2 に答える 2

2

次のようにラップgrid.arrangepdfます。

library(ggplot2)
library(gridExtra)
p1 <- p2 <- ggplot(mtcars, aes(factor(cyl))) + geom_bar()
pdf(tf <- tempfile(fileext = ".pdf"))
grid.arrange(p1, p2)
dev.off()
shell.exec(tf)
于 2015-04-02T15:54:12.290 に答える