Присвойте новое имя отметке оси, когда NA - PullRequest
1 голос
/ 26 мая 2020

У меня есть столбчатый график с тремя отметками оси, одна из которых - NA. Хотя я могу переименовать две отметки оси "не-NA", я не могу дать новое имя той, которая называется "NA".

Как я могу это сделать?

В пример ниже, «Нет» можно переименовать в «тест», но «NA» нельзя переименовать в «Неизвестно»:

library(ggplot2)
library(tibble)

data_plot <- as.data.frame(Titanic) %>%
  add_row(Class = "Crew",
          Sex = "Female",
          Age = "Adult",
          Survived = NA,
          Freq = 20)

ggplot(data_plot, aes(x = factor(Survived),  
                 y = factor(Sex),
                 fill = factor(Class),
                 color = factor(Class))) +
  geom_bar(position = "dodge", stat = "identity") +
  scale_x_discrete(labels = c("No" = "test", 
                              "NA" = "Unknown"))

1 Ответ

2 голосов
/ 26 мая 2020

Решение с использованием fct_explicit_na

library(forcats)
data_plot <- as.data.frame(Titanic) %>%
  add_row(Class = "Crew",
          Sex = "Female",
          Age = "Adult",
          Survived = NA,
          Freq = 20)

ggplot(data_plot, aes(x = fct_explicit_na(Survived,na_level = "Unknown"),  
                      y = factor(Sex),
                      fill = factor(Class),
                      color = factor(Class))) +
  geom_bar(position = "dodge", stat = "identity") +
  scale_x_discrete(labels = c("No" = "test"))

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...