Похоже, plot
пытается создать блокпост, но, поскольку в каждой категории только одно значение, вы получаете одну горизонтальную линию.border="red"
изменит цвет на красный.Если вы запустите x = plot(dd)
, а затем просмотрите x
, вы увидите, что это список, в котором первый элемент содержит статистику коробочного графика.
plot
- это «универсальная» функция, которая «отправляет» различныефактические функции построения (называемые «методами»), в зависимости от того, какой тип объекта вы предоставляете plot
.В этом случае у вас есть категориальная переменная оси X, поэтому plot
отправляет «метод», который создает блок-график.
Чтобы увидеть, какие конкретные функции plot
могут вызывать, запустите methods(plot)
.Я не проверял, но я подозреваю, что функция plot.data.frame
в конечном итоге вызывает функцию, которая создает блок-график, когда переменная x является категориальной, а переменная y числовой (запустите graphics:::plot.data.frame(dd)
, чтобы увидеть это).
Если вы выполните plot
перед суммированием, вы увидите, что поле отображается:
library(dplyr)
set.seed(123)
dd <- data.frame(FF = cut(runif(1000,0,100), seq(0,100,10)),
XX = rnorm(1000, 10, 2))
plot(dd, border="red")
dd %>%
group_by(FF) %>%
summarize(XX=mean(XX)) %>%
plot(border="red")