2016-08-11 2 views
2

В R Я хочу построить значения из вектора b против вектора a (обе длины 8) с использованием xyplot.
Возможно ли иметь на оси х диапазон от 0 до 10, так что оба вектора могут быть заговорены друг за другом? Теперь ось х происходит от 1 до 8.Значения по оси x в xyplot() в R

b <- c(0.5, 0.75, 1, 2.5, 4, 6, 8, 10) 
a <- c(0.0499, 0.0491, 0.0507, 0.0505, 0.0513, 0.0493, 0.0507, 0.0500) 
library(lattice) 
xyplot(a ~1:8, type="l", col="blue", ylim=c(0,0.10)) 

Edit:
Я имею в виду, что у нас есть участок линии, проходящей через координаты (0.5,0.0409); (0.75,0.0491); (1, 0,0507) и т.д.

+1

Если вы хотите построить рисунок как с помощью 'a', так и' b', тогда 'xyplot (a ~ b , type = "l", col = "blue") 'кажется правильным началом poi нт. Что именно вы хотите, чтобы границы каждой оси были? Я все еще довольно смущен, какой желаемый результат. – MrFlick

ответ

1

Если вы хотите, чтобы построить компоненты друг против друга, просто

xyplot(a~b, type="l", col="blue", ylim=c(0,0.1)) 

enter image description here

+0

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

1

Не уверен, что, если я правильно понимаю ваш вопрос, но если вы просто пытаетесь чтобы изменить настройку оси x на диапазон от 0 до 10, просто добавьте xlim=c(0,10), поэтому ваша последняя строка будет xyplot(a ~1:8, type="l", col="blue", ylim=c(0,0.10), xlim=c(0,10))

+0

Возможно, я неправильно понимаю вопрос; однако установка xlim действительно изменяет диапазон оси x, чтобы перейти от 0 до 10 (тонкое изменение, так как исходный код переместился с 0 на 8). Чтобы проверить это, я установил 'xlim = c (0,100)', чтобы увидеть гораздо более резкое изменение масштаба. – sacul

+0

Да, извините, я был в замешательстве. ОП также уточнил вопрос сейчас ... –

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