2015-04-12 20 views
5

Dưới đây là một âm mưu mà tôi muốn đưa vào một bài báo. Vấn đề là độ rộng của âm mưu của tôi mà là nhỏ (mà làm cho x-axix không thể đọc được gì cả)Làm thế nào để phóng to chiều rộng cốt truyện của tôi trong ggplot2?

Dưới đây là đoạn code 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) 

Tôi đã nhìn xung quanh để xem làm thế nào để mở rộng cốt truyện, nhưng tôi không tìm thấy gì cả.

Bất kỳ ý tưởng nào về việc thêm/xóa/sửa đổi trong mã của tôi là gì?

plot

+3

Câu trả lời của Jaap giải quyết câu hỏi mở rộng. Ngoài ra, bạn có thể muốn xoay x dấu chấm: 'p = p + chủ đề (axis.text.x = element_text (angle = 90, hjust = 1, vjust = 0.5))' – Arpi

Trả lời

10

Có lẽ cách dễ nhất để làm điều này, là bằng cách sử dụng các thiết bị đồ họa (png, jpeg, bmp, tiff). Bạn có thể thiết lập chiều rộng và chiều cao chính xác của một hình ảnh như sau:

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

Các widthheight là tính theo pixel. Điều này đặc biệt hữu ích khi chuẩn bị hình ảnh để xuất bản trên internet. Để biết thêm thông tin, hãy xem trang trợ giúp với ?png.

Hoặc, bạn cũng có thể sử dụng ggsave để nhận được thứ nguyên chính xác mà bạn muốn. Bạn có thể thiết lập kích thước với:

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

Các widthheight là theo đơn vị inch, với dpi bạn có thể thiết lập chất lượng của hình ảnh.

+2

Câu trả lời rất hay. Tôi làm một cái gì đó rất giống với 'thạch anh (chiều cao = 11, chiều rộng = 8,5)' để có được một cửa sổ cốt truyện mới, tiếp theo là công cụ 'ggplot()', tiếp theo là 'quartz.save ('fname.pdf')'. Kết quả cuối cùng là như nhau và tôi không bao giờ phải nhớ những lệnh 'dev.off()' phiền phức. –

Các vấn đề liên quan