Lỗi trong plot.new (): lề hình quá lớn, Biểu đồ phân tán


107

Tôi đã xem xét các câu hỏi khác nhau để tìm giải pháp và tôi đã thử những gì được đề xuất nhưng tôi không tìm thấy giải pháp để làm cho nó hoạt động.

Mỗi khi tôi muốn chạy mã này, nó luôn nói:

Lỗi trong plot.new (): lề con số quá lớn

và tôi không biết làm thế nào để sửa chữa nó. Đây là mã của tôi:

par(mfcol=c(5,3))
hist(RtBio, main="Histograma de Bio Pappel")
boxplot(RtBio, main="Diagrama de Caja de Bio Pappel")
stem(RtBio)
plot(RtBio, main="Gráfica de Dispersión")

hist(RtAlsea, main="Histograma de Alsea")
boxplot(Alsea, main="Diagrama de caja de Alsea")
stem(RtAlsea)
plot(RtTelev, main="Gráfica de distribución de Alsea")

hist(RtTelev, main="Histograma de Televisa")
boxplot(telev, main="Diagrama de Caja de Televisa")
stem(Telev)
plot(Telev, main="Gráfica de dispersión de Televisa")

hist(RtWalmex, main="Histograma de Walmex")
boxplot(RtWalmex, main="Diagrama de caja de Walmex")
stem(RtWalmex)
plot(RtWalmex, main="Gráfica de dispersión de Walmex")

hist(RtIca, main="Histograma de Ica")
boxplot(RtIca, main="Gráfica de caja de Ica")
stem(RtIca)
plot(RtIca, main="Gráfica de dispersión de Ica")

Tôi có thể làm gì?



2
Lề dường như quá lớn đối với hình ảnh của bạn. Điều này có thể xảy ra nếu bạn có một ô cửa sổ nhỏ. Trong mọi trường hợp, mô tả của bạn không đủ để chẩn đoán sự cố. Chúng tôi có thể sử dụng một ví dụ có thể tái tạo hoặc ảnh chụp màn hình phiên R của bạn với cửa sổ âm mưu.
Roman Luštrik

Tôi trường hợp của tôi, nó đã giúp gỡ lỗi với một tập hợp con nhỏ của dữ liệu được vẽ như thế plot(df[1,1:3], df2[1,1:3])- và sau đó tôi nhận ra rằng điều tôi thực sự muốn làm là plot(unlist(df[1,1:3]), unlist(df2[1,1:3]))Xem thêm: stackoverflow.com/a/17074060/6018688
fabianegli

Câu trả lời:


161

Mỗi khi bạn tạo âm mưu, bạn có thể gặp lỗi này - " Error in plot.new() : figure margins too large". Để tránh những lỗi như vậy, trước tiên bạn có thể kiểm tra par("mar")đầu ra. Bạn sẽ nhận được:

[1] 5.1 4.1 4.1 2.1

Để thay đổi điều đó, hãy viết:

par(mar=c(1,1,1,1))

Điều này sẽ khắc phục lỗi. Hoặc nếu không, bạn có thể thay đổi các giá trị cho phù hợp.

Hy vọng điều này làm việc cho bạn.


2
làm thế nào để bạn biết chính xác giá trị nào bên trong lề? Và tại sao bạn nói rằng tôi nên nhận [1] 5.1 4.1 4.1 2.1 2.1 nhưng sau đó bạn lại bảo tôi chuyển nó cho tất cả 1?
Herman Toothrot vào

2
Tôi gặp phải vấn đề tương tự với RStudio và khi tôi nhập, par("mar")tôi truy xuất cùng một chuỗi chính xác [1] 5.1 4.1 4.1 2.1nên tôi đã nhập par(mar=c(1,1,1,1))nhưng sau đó plot () sẽ không vẽ bất cứ thứ gì, vì vậy tôi phải đóng cả RStudio và thiết bị đầu cuối. Sau khi mở lại RStudio, nó đã trở lại bình thường.
noobninja

2
Cũng gặp phải vấn đề tương tự trong R markdown trong RStudio. Tuy nhiên, cả giải pháp của Guest R hoặc @noobninja khởi động lại đều không khắc phục được sự cố cho tôi.
SC.

Bạn nhận được lỗi này do sự cố bố cục giao diện người dùng RStudio, không phải lỗi nào đó với mã. Câu trả lời thứ hai đã sửa nó cho tôi.
Nicole Sullivan

1
@Nicole Sullivan Tôi cũng gặp lỗi này mà không có RStudio. Tôi đã làm như mô tả và nó hoạt động. Cảm ơn @djhurio!
Gwang-Jin Kim

105

Điều này có thể xảy ra khi bảng âm mưu của bạn trong RStudio quá nhỏ so với lề của ô mà bạn đang cố gắng tạo. Hãy thử mở rộng nó và sau đó chạy lại mã của bạn.

Giao diện người dùng RStudio gây ra lỗi khi bảng âm mưu quá nhỏ để hiển thị biểu đồ: RStudio với bảng âm mưu quá nhỏ

Chỉ cần mở rộng bảng điều khiển âm mưu sẽ sửa được lỗi và hiển thị biểu đồ: RStudio với bảng điều khiển được mở rộng


5
Nó thực sự làm việc .. chỉ đơn giản là mở rộng diện tích cốt truyện giúp
Jiapeng Zhang

3
Có, thay đổi kích thước các bảng trong RStudio hoạt động. Đó là lỗi RStudio gây ra khi bạn thu nhỏ phía bên phải của giao diện người dùng bằng cách trượt bảng âm mưu đóng lại.
Nicole Sullivan

điều này thực sự hoạt động trong phần lớn các trường hợp. có một thiểu số nhỏ các trường hợp lợi nhuận thực sự là quá nhỏ đến nỗi ngay cả khi bạn phóng to cửa sổ này bạn không có giải pháp cho vấn đề này
Dimitrios Zacharatos

27

Gọi dev.off()để thực hiện RStudio mở một thiết bị đồ họa mới với cài đặt mặc định phù hợp với tôi. HTH.


1
Bạn có thể vui lòng giải thích làm thế nào để làm điều đó?
Swift Arrow

20

Nếu bạn nhận được thông báo này trong RStudio, hãy nhấp vào hình 'cán chổi' "Clear All Plots" trong tab Plots và thử lại plot ().

Hơn nữa Thực hiện lệnh

graphics.off()

11
viết ba dòng nàygraphics.off() par("mar") par(mar=c(1,1,1,1))
Hiren

6

Chỉ cần xóa các âm mưu và thử thực thi lại mã ... Nó đã hiệu quả với tôi


1

Chỉ là một lưu ý phụ. Đôi khi lỗi "lề" này xảy ra vì bạn muốn lưu một con số có độ phân giải cao (ví dụ: dpi = 300hoặc res = 300) trong R.
Trong trường hợp này, điều bạn cần làm là chỉ định chiều rộng và chiều cao . (Btw, ggsave()không yêu cầu điều này.)

Điều này gây ra lỗi ký quỹ:

# eg. for tiff()
par(mar=c(1,1,1,1))
tiff(filename =  "qq.tiff",
     res = 300,                                                 # the margin error.
     compression = c( "lzw") )
# qq plot for genome wide association study (just an example)
qqman::qq(df$rawp, main = "Q-Q plot of GWAS p-values", cex = .3)
dev.off()

Điều này sẽ khắc phục lỗi ký quỹ:

# eg. for tiff()
par(mar=c(1,1,1,1))
tiff(filename =  "qq.tiff",
     res = 300,                                                 # the margin error.
     width = 5, height = 4, units = 'in',                       # fixed
     compression = c( "lzw") )
# qq plot for genome wide association study (just an example)
qqman::qq(df$rawp, main = "Q-Q plot of GWAS p-values", cex = .3)
dev.off()
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.