2013-07-31 2 views
-1

Допустим, я произвел случайный участок в R, а затем размещены горизонтальные сетки:Получить прямоугольные сетки координат из графика с помощью R

x<-rnorm(100, 12, 3) 
y<-rnorm(100, 34, 45) 
plot(x,y) 
#griding in y direction only 
grid(NA, 25, lwd = 2) 

Участок можно найти здесь: https://docs.google.com/file/d/0B6GUNg-8d30vUVhMS3ZUa0lULVU/edit?usp=sharing. Я хочу знать: (i) как ограничить сетку максимальным и минимальным горизонтальным размером моих данных в этой конкретной сетке ?; то есть не будет сетки слева/справа, где у меня нет данных, учитывая, что высота моих сеток остается неизменной (я не против создания ее пространственного объекта, если это необходимо); и (ii) Как экспортировать/получить координаты каждой прямоугольной сетки после этого?

ответ

0

Это должно ответить на ваш i). Вы можете использовать clip(), чтобы задать область сюжета, к которой вы хотите добавить.

x<-rnorm(100, 12, 3) 
y<-rnorm(100, 34, 45) 
plot(x,y) 

clip(x1=min(x), x2=max(x), y1=min(y), y2=max(y)) 
grid(NA, 25, lwd = 2) 

Для II), вы можете выкопать вокруг сетки(), чтобы найти, что он использует следующий код (немного измененную здесь), чтобы вычислить Y координаты ваших линий сетки,

ny <- 25 
U <- par("usr") 
at <- seq.int(U[3L], U[4L], length.out = ny + 1) 
Y <- at[-c(1, ny + 1)] 

где Y является вектором.

+0

Я думаю, что мой вопрос был немного затенен, решение, которое вы дали ограничить моими сетками для максимальной и минимальной базы данных, но я хочу, чтобы степень была ограничена данными, расположенными в каждой горизонтальной сетке (я только что сделал редактирование в мой вопрос, который дает понять)! – ToNoY

+0

Итак, вы имеете в виду, что для каждой горизонтальной линии используйте только «размер вашей информации». Вы имеете в виду в этом бункере между линиями сетки? Более конкретный пример поможет здесь. –

+0

Да, вы правы, я все еще пытаюсь и почти понял, как это сделать, опубликует, как только я закончу. благодаря – ToNoY

Смежные вопросы