r - 如何在一个坐标系中绘制两个图表,组合一列的所有值?

标签 r ggplot2 plot

我想要一个坐标系,但问题是:

我在数据集中拥有所有州的所有图表,颜色正确,图例仅根据政党,但仍然有 50 个图表。 我只想要两种 - 一种结合所有共和州,一种结合所有民主州。

corona_usa_simple <- readr::read_csv("https://raw.githubusercontent.com/datasets/covid-19/master/data/us_simplified.csv")

corona_us_states <- corona_usa_simple %>% 
select(- FIPS, -`Country/Region`) %>%  rename(State=`Province/State`)

us_states_population <- corona_us_states %>%
    group_by(State, Date) %>% 
    summarise(totalPopulation = sum(Population),
              totalConfirmed = sum(Confirmed),
              totalDeaths = sum(Deaths))

wiki_governors <- htmltab("https://en.wikipedia.org/wiki/List_of_United_States_governors",
 header = 2) %>% slice(-1)
wiki_governors[23,3] <- "Democratic" #Democratic-Farmer-Labor to Democratic

corona_party_states <- left_join(wiki_governors, us_states_population, by= "State") %>%
select(- Governor, - Born, - `Prior public experience`, - Inauguration, - `End of term`, - `Past governors`)
corona_party_states <- transform(corona_party_states, CasesPop = totalConfirmed*100000/totalPopulation) %>%
  rename(state = State) 

## Plot for the graphs
ggplot(data = corona_party_states) +
  geom_point(aes(x = Date, y = CasesPop, color = Party)) +
  scale_color_manual(values=c("Democratic" = "blue", "Republican" = "red"))+
  ggtitle("COVID-19 Cases per Capita by Party")+
  ylab("Cases/100K")+
  xlab("Timeline")+
  theme_bw()

这是我到目前为止的代码。我将不胜感激任何帮助!

我也尝试过这种方法,但看起来是一样的:

corona_party_cases <- corona_party_states %>% 
 group_by(Party, Date) %>% select(-state) %>% summarise(CasesPop)

最佳答案

如果我理解正确的话,你想要在你的情节上有两条线;共和党州每 10 万例有一条线,民主党州每 10 万例有一条线。在这种情况下,您需要对数据做更多的工作来清理和总结它。绘图代码本身很好。

corona_party_states %>% 
  select(-Party) %>% 
  rename(Party = Party.1) %>%
  mutate(Party = substr(Party, 1, 10)) %>%
  group_by(Date, Party) %>%
  summarise(total_pop = sum(totalPopulation),
            total_confirmed = sum(totalConfirmed),
            CasesPop = 100000 * total_confirmed/total_pop) %>%
  ggplot() +
  geom_line(aes(x = Date, y = CasesPop, color = Party), size = 2) +
  scale_color_manual(values = c(Democratic = "blue", Republican = "red")) +
  ggtitle("COVID-19 Cases per Capita by Party")+
  ylab("Cases/100K")+
  xlab("Timeline")+
  theme_bw()

enter image description here

关于r - 如何在一个坐标系中绘制两个图表,组合一列的所有值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64115665/

相关文章:

r - 使用geom_point()避开位置,x =连续,y =因数

r - 如何使用 ggplot2 制作 3 个离散值的热图?

javascript - 使用不同颜色(不是渐变)为 SVG 路径着色的有效方法

r - 无法在 ggplot 中使用 min() 和 max() 设置 xlim 和 ylim

R:具有连续变量和分类变量的 GLMM 交互图 (lme4)

r - 在 R 中的光谱上对绘图点进行着色

R:如何在绘图中删除这个微小的轴边距

R 并行 - parRapply 无法正常工作

r - 在 ggplot 中编辑图例标签

r - 如何在两个不同类别之间绘制 facet_wrap 中的国家/地区?