我正在尝试在R中创建堆积条形图。我需要条形图来显示三件事:
但是,我的实际输出是:
到目前为止我的代码是:
carData <- read.csv(file="~/Desktop/carData.csv",head=TRUE,sep=";")
ggplot(carData, aes(x = passed.test, fill = owns.car)) + geom_bar()
CSV文件中的passed.test值为1或0.(1 =已通过,0 =未通过)
CSV文件中的owns.car值为1或0.(1 =拥有汽车,0 =不拥有汽车)
我如何:
一个。向条形图添加颜色以显示第二个变量(拥有汽车=是或否)
B中。将X轴更改为“是”和“否”,而不是-0.5 -1.5
答案 0 :(得分:2)
您希望将这两列列为因子。否则,假设数值是连续的,因此当geom_bar
计算每个值的观察值时,它对于owns.car
的连续水平没有多大意义。
library(tidyverse)
set.seed(1234)
carData <- tibble(
passed.test = sample(c(0, 1), 100, replace = T),
owns.car = sample(c(0, 1), 100, replace = T)
)
cars_factors <- mutate_all(carData, as.factor)
ggplot(cars_factors, aes(x = passed.test, fill = owns.car)) +
geom_bar() +
scale_x_discrete(labels = c("No", "Yes")) +
scale_fill_discrete(labels = c("No", "Yes"))
由reprex package(v0.2.0)创建于2018-04-28。