绘制柱形图时如何避免重复分类变量?
How to avoid repetition of categorical variables while plotting a column chart?
https://www.kaggle.com/shivamb/netflix-shows-and-movies-exploratory-analysis/notebook
包含数据集。 (文件大小 - 2.13 MB)。
我正在尝试绘制 Netflix 提供的前 20 大内容类别。
我试过的代码如下,
library(tidyverse)
library(lubridate)
net_flix <- read.csv("netflix_titles_nov_2019.csv")
net_flix %>% separate_rows(listed_in, sep = ",")%>%
count(listed_in)%>%
slice_max(n, n = 20)%>%
ggplot(aes(y = fct_reorder(listed_in, n), x = n))+
geom_col()
结果输出如下,
[Netflix 上排名前 20 的节目类别]
从图中可以看出,戏剧、喜剧、国际电视节目等很多类别出现在多个位置。
预期输出如下:
欢迎来到 SO,我认为你用空格弄乱了你的字符串,也尝试遵循图形语法上的 ggplot 约定
library(tidyverse)
library(lubridate)
net_flix <- read_csv("netflix_titles.csv")
net_flix %>%
separate_rows(listed_in, sep = ",") %>%
mutate(listed_in = listed_in %>% str_squish()) %>%
count(listed_in) %>%
top_n(20, wt = n) %>%
ggplot(aes(x = fct_reorder(listed_in, n), y = n)) +
geom_col() +
coord_flip()
https://www.kaggle.com/shivamb/netflix-shows-and-movies-exploratory-analysis/notebook 包含数据集。 (文件大小 - 2.13 MB)。
我正在尝试绘制 Netflix 提供的前 20 大内容类别。
我试过的代码如下,
library(tidyverse)
library(lubridate)
net_flix <- read.csv("netflix_titles_nov_2019.csv")
net_flix %>% separate_rows(listed_in, sep = ",")%>%
count(listed_in)%>%
slice_max(n, n = 20)%>%
ggplot(aes(y = fct_reorder(listed_in, n), x = n))+
geom_col()
结果输出如下, [Netflix 上排名前 20 的节目类别]
从图中可以看出,戏剧、喜剧、国际电视节目等很多类别出现在多个位置。
预期输出如下:
欢迎来到 SO,我认为你用空格弄乱了你的字符串,也尝试遵循图形语法上的 ggplot 约定
library(tidyverse)
library(lubridate)
net_flix <- read_csv("netflix_titles.csv")
net_flix %>%
separate_rows(listed_in, sep = ",") %>%
mutate(listed_in = listed_in %>% str_squish()) %>%
count(listed_in) %>%
top_n(20, wt = n) %>%
ggplot(aes(x = fct_reorder(listed_in, n), y = n)) +
geom_col() +
coord_flip()