2011-07-14 20 views
5

Tôi đang cố vẽ đồ thị a và b, mỗi ô chứa 7500 điểm dữ liệu. Tuy nhiên khi tôi đã cố gắng lô (x, y), tôi đã nhận lỗi sau:Vẽ đồ thị trong R; không thể bị ép buộc thành lỗi kép

> plot(a[11],b[11]) 
Error in xy.coords(x, y, xlabel, ylabel, log) : 
    (list) object cannot be coerced to type 'double' 

Đó là lạ, bởi vì tất cả các giá trị tất cả các số nguyên. Tôi có thể làm gì?

Cảm ơn bạn.

+4

điều này: http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example – Chase

Trả lời

7

Dường như bạn đang cố vẽ một vectơ từ danh sách. Thay vào đó, hãy thử sử dụng con số bằng cách sử dụng $ hoặc [[]].

Dưới đây là vấn đề của bạn:

a <- as.list(data.frame("x"=1:5,"y"=5:1)) 
b <- as.list(data.frame("x"=1:5,"y"=5:1)) 

plot(a[2],b[2]) ## recreates your error 

Dưới đây là giải pháp:

plot(a$y, b$y) ## plots as expected subsetting by $ 

Ngoài ra, nếu bạn muốn gắn bó với con số:

plot(a[[2]],b[[2]]) 

Tôi mạnh mẽ sẽ khuyên bạn đọc trang trợ giúp được liên kết với điều này:

?'[' 
Các vấn đề liên quan