Почему функция ylim () в ggplot2 игнорируется? - PullRequest
1 голос
/ 14 января 2020

Я хочу, чтобы ось Y на линейной диаграмме показывала более широкий диапазон значений, потому что верхняя и нижняя точки данных находятся далеко от максимальных и минимальных значений по умолчанию, показанных на оси - я хочу установить пределы на -0,07 и 0,07. Однако код для установки оси y, похоже, игнорируется - вот мой код:

scale<-c("250 m", "500 m", "1 km", "2 km", "3 km", "4 km", "5 km")
scales<-factor(scale, levels=c("250 m", "500 m", "1 km", "2 km", "3 km", "4 km", "5 km"))

coefs<-c(-0.069, -0.023, -0.006, 0.041, 0.069, 0.066, 0.07)
coef.scales=data.frame(scales,coefs)

coef.fig<-ggplot(data = coef.scales, aes(scales, coefs, group = 1))+
  geom_point() +
  geom_line() +
  labs(x = "Scale", y = "Standardized coefficient") + 
  theme_classic(base_size = 17) +
  geom_hline(yintercept = 0, linetype = "dashed") +
  ylim(-0.07, 0.07)

Как и команда ylim (-0.07, 0.07), которую я также пробовал scale_y_continuous (-0.07, 0,07) и координат_картезиан (ylim = c (- 0,07, 0,07)). Значение по умолчанию остается неизменным, с 3 значениями по шкале y в диапазоне от -0,04 до 0,04. Почему я не могу изменить значения, показанные на оси y?

1 Ответ

1 голос
/ 14 января 2020

Я думаю, вы пытаетесь установить breaks. Ваш код фактически устанавливает пределы y. Он просто не помечает их так, как вы ожидаете.

coef.fig<-ggplot(data = coef.scales, aes(scales, coefs, group = 1))+
  geom_point() +
  geom_line() +
  labs(x = "Scale", y = "Standardized coefficient") + 
  theme_classic(base_size = 17) +
  geom_hline(yintercept = 0, linetype = "dashed") +
  scale_y_continuous(limits = c(-0.07, 0.07), breaks = c(-0.07, 0, 0.07))

enter image description here

...