Как удалить na из графика в ggplot2 (с примером)
Вы можете использовать следующий базовый синтаксис для удаления значений NA из графика в ggplot2:
library (ggplot2) ggplot(data=subset(df, ! is. na (this_column)), aes(x=this_column)) + geom_bar()
В этом конкретном примере создается гистограмма и удаляются все строки из фрейма данных, где значение NA отображается в столбце this_column .
В следующем примере показано, как использовать этот синтаксис на практике.
Пример: удалить NA из графика в ggplot2.
Предположим, у нас есть следующий кадр данных, содержащий информацию о количестве очков, набранных баскетболистами разных команд:
#create data frame df <- data. frame (team=c('A', 'A', NA, NA, 'B', 'B', 'B', 'B'), dots=c(22, 29, 14, 8, 5, 12, 26, 36)) #view data frame df team points 1 to 22 2 to 29 3 <NA> 14 4 <NA> 8 5 B 5 6 B 12 7 B 26 8 B 36
Теперь предположим, что мы пытаемся создать гистограмму в ggplot2, чтобы визуализировать количество вхождений каждой команды:
library (ggplot2) #create bar plot to visualize occurrences by team ggplot(df, aes(x=team)) + geom_bar()
Обратите внимание, что на графике автоматически создается полоса для отображения значений NA в столбце «Команда» .
Чтобы удалить эту полосу из графика, мы можем использовать функцию subset() для подмножества фрейма данных, чтобы включить только те строки, где значение в столбце команды не равно NA:
library (ggplot2) #create bar plot to visualize occurrences by team and remove NA ggplot(data=subset(df, ! is. na (team)), aes(x=team)) + geom_bar()
На этой гистограмме по-прежнему отображается количество вхождений значений «A» и «B» в столбце «Команда» , но она больше не включает полосу для отображения количества вхождений значений NA.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в ggplot2:
Как удалить метки осей в ggplot2
Как удалить легенду в ggplot2
Как удалить линии сетки в ggplot2