2011-07-15 37 views
5

Giả sử tôi có danh sách các ô mà tôi đã tạo.Lưu danh sách các ô theo tên của chúng()

library(ggplot2) 
plots <- list() 
plots$a <- ggplot(cars, aes(speed, dist)) + geom_point() 
plots$b <- ggplot(cars, aes(speed)) + geom_histogram() 
plots$c <- ggplot(cars, aes(dist)) + geom_histogram() 

Bây giờ, tôi muốn lưu tất cả những điều này, ghi nhãn từng phần tử với tên (phần tử) tương ứng của chúng.

lapply(plots, 
     function(x) { 
     ggsave(filename=paste(...,".jpeg",sep=""), plot=x) 
     dev.off() 
     } 
     ) 

tôi sẽ thay thế gì "..." với ví dụ mà trong thư mục làm việc của tôi lô được lưu lại dưới dạng:

a.jpeg 
b.jpeg 
c.jpeg 

Trả lời

13

lẽ bạn cần phải vượt qua những cái tên trong danh sách:

lapply(names(plots), 
    function(x)ggsave(filename=paste(x,".jpeg",sep=""), plot=plots[[x]])) 
+1

+1 và chấp nhận đơn giản tuyệt đối. Đó là một khoảnh khắc tát đầu cho tôi. Cảm ơn Koshke! –

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