Как изменить шкалы на оси x в гистограмме, сделанной с помощью пакета Lattice в R? - PullRequest
2 голосов
/ 10 сентября 2011

Я успешно делал гистограмму для переменной скорости ветра за все годы и месяцы в моем наборе данных.Но я хочу, чтобы ось X была помечена с интервалом в 1 милю / час. Каждый контейнер также имеет интервал в 1 милю / час.В настоящее время по умолчанию ось X помечена с интервалом 20 миль / час.

Вот мой код R.

histogram(~ as.numeric(spd) | factor(month) + factor(year), data = spd_sub, 
  xlab = "spd in miles/hour", 
  nint= max(as.numeric(spd))-min(as.numeric(spd)), layout = c(1, 1))

Есть идеи, как это сделать?

1 Ответ

5 голосов
/ 10 сентября 2011

Может быть, об этом немного подумать. Обратите внимание на использование scales.

library(lattice)
Depth <- equal.count(quakes$depth, number=8, overlap=.1)
xyplot(lat ~ long | Depth, data = quakes)

Это дает вам следующий график. enter image description here

И если вы установите аргумент шкалы:

xyplot(lat ~ long | Depth, data = quakes,
        scales = list(y = list(at = seq(from = 0, to = -50, by = -10))))

enter image description here

Один подарок с гистограммой (изменил отметки и повернул их):

histogram( ~ height | voice.part, data = singer,
    xlab = "Height (inches)", type = "density",
    panel = function(x, ...) {
        panel.histogram(x, ...)
        panel.mathdensity(dmath = dnorm, col = "black",
            args = list(mean=mean(x),sd=sd(x)))
    },
    scales = list(x = list(at = seq(60, 80, by = 2), rot = 45)))

enter image description here

...