2011-01-04 36 views
9

Làm cách nào để bạn mở rộng đường trục trong R để bao trùm phạm vi dữ liệu của bạn? Ví dụ, trongKéo dài chiều dài của trục lô trong R?

http://i.stack.imgur.com/xUvp3.png

dữ liệu của tôi đi vào khoảng 2100 và tôi muốn dòng cho trục x nên đi quá xa, nhưng không làm cho một tickmark hoặc nhãn ở năm 2100. Đây có phải là thậm chí có thể trong R ?

Đây là mã được sử dụng để thực hiện âm mưu trên:

hist(x,breaks=50,xlab="...",main="",xlim=c(0,2100)) 

Cảm ơn.

Trả lời

8

Bạn cần sử dụng hai lệnh trục; một cho đường trục và một cho các dấu và nhãn.

set.seed(2); x <- rlnorm(1000, log(130)) 
hist(x, breaks=seq(0, 3000, by=200), xlim=c(0,2100), xaxt="n") 

axis(1, at=c(0,2100), labels=c("",""), lwd.ticks=0) 
axis(1, at=seq(0 , 2000, by=200), lwd=0, lwd.ticks=1) 

alt text

+0

cảm ơn! điều đó có hiệu quả. tôi không thể tin rằng tôi đã không nghĩ về điều đó. – spadequack

3

Như câu nói nổi tiếng

R> fortunes::fortune("yoda") 

Evelyn Hall: I would like to know how (if) I can extract some of 
the information from the summary of my nlme. 
Simon Blomberg: This is R. There is no if. Only how. 
    -- Evelyn Hall and Simon 'Yoda' Blomberg 
     R-help (April 2005) 
R> 

nói "Không có nếu. Chỉ như thế nào.".

Bạn có thể đặt bất kỳ nhãn trục bạn muốn bằng cách

  • đàn áp các nhãn trục mặc định và
  • thiết lập các trục nhãn mà bạn muốn.

Bắt đầu với help(axis)

+0

Tôi nhìn vào trục và có một chút gần gũi hơn với http://imgur.com/g0f1Q mệnh (usr = c (0, max (x), 0,1200)) các trục (x, break = 50, xlab = "...", chính = "", xlim = c (0,2100), xaxt = "n") (1, tại = seq (0,2500,500), nhãn = seq (0,2500,500)) nhưng bây giờ có nhiều đường trục hơn tôi muốn, mặc dù tôi nói để cắt nó ở mức tối đa (x) là 2074. Sau khi vẽ, ngang ("usr") [2] cho 2184. – spadequack

3

Với hist(), bạn có thể kiểm soát vị trí của bọ ve và nhãn với trục:

hist(rlnorm(1000, log(130)), breaks=seq(0, 3000, by=200), xlim=c(0,2100) , axes=FALSE) 
axis(1, at=seq(0 , 2000, by=200) 

Nếu bạn muốn nhìn thấy mỗi 200 khoảng dán nhãn bạn có thể xoay nhãn có đối số las:

axis(1, at=seq(0 , 2000, by=200) , las=2) 
Các vấn đề liên quan