Как правильно использовать переменную в ggplot?

Я обнаружил проблему, которую не смог понять. Может кто-нибудь указать на объяснение?

В ggplot, если я использую / не использую "$" с именем переменной, это дает другой результат. Пожалуйста, смотрите пример ниже,

library(ggplot2)
df <- read.csv("pseudo_facebook.tsv", sep = '\t')

# Without $ sign
ggplot(data = df, aes(x = friend_count)) + geom_histogram(binwidth = 25) +
  scale_x_continuous(limits = c(1, 1000), breaks = seq(0, 1000, 25)) + 
  facet_grid(~df$gender)

Без $ в имени переменной

# With $ sign
ggplot(data = df, aes(x = df$friend_count)) + geom_histogram(binwidth = 25) +
  scale_x_continuous(limits = c(1, 1000), breaks = seq(0, 1000, 25)) + 
  facet_grid(~df$gender)

1 ответ

Я не уверен, что именно это является причиной вашего поведения, но в первом примере у вас все еще есть df$ в facet_grid формула. Возможно, что существует некоторая хитрая проблема с оценкой, если вы смешиваете только имена столбцов с именами столбцов, указанными во фрейме данных.

Если вы отключите это имя файла в read.csv с URL-адресом у вас будет возможность протестировать

Другие вопросы по тегам