2015-04-12 13 views
5

Poniżej znajduje się działka, którą chcę zamieścić w artykule. Problemem jest szerokość mojej działki, która jest mała (które sprawiają, że x-axix nie czytelny w ogóle)Jak powiększyć szerokość wydruku w ggplot2?

Oto kod 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) 

mam rozejrzeć, aby zobaczyć, jak powiększyć fabułę, ale nic nie znalazłem.

Jakieś pojęcie o tym, co dodać/usunąć/zmodyfikować w moim kodzie?

plot

+3

Odpowiedź Jaapa rozwiązuje pytanie powiększające. Dodatkowo możesz obrócić x tickmarks: 'p = p + theme (axis.text.x = element_text (angle = 90, hjust = 1, vjust = 0.5))' – Arpi

Odpowiedz

10

Prawdopodobnie najprostszym sposobem, aby to zrobić, jest za pomocą urządzeń graficznych (PNG, JPEG, BMP, TIFF). Można ustawić dokładną wysokość i szerokość obrazu w następujący sposób:

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() 

width i height są w pikselach. Jest to szczególnie przydatne podczas przygotowywania obrazów do publikacji w Internecie. Więcej informacji można znaleźć na stronie pomocy pod adresem ?png.

Alternatywnie można również użyć ggsave, aby uzyskać dokładne wymiary, które chcesz. Można ustawić wymiary z:

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

width i height są w calach dpi można ustawić jakość obrazu.

+2

Bardzo dobra odpowiedź. Robię coś bardzo podobnego do 'kwarcu (wysokość = 11, szerokość = 8.5)', aby uzyskać nowe okno wykresu, po którym następują rzeczy 'ggplot()', a następnie 'quartz.save ('fname.pdf')'. Wynik końcowy jest taki sam i nigdy nie muszę pamiętać tych brzydkich komend 'dev.off()'. –

Powiązane problemy