3

我正在使用 Kaggle ' train ' 数据集。

它包含 891 行。我使用的列是~Survived。此列由因子值“0”和“1”组成。

我使用以下代码行绘制了这两个值:

train %>% ggvis(~Survived, fill = ~Survived) %>%
  layer_bars()

结果如下所示:

在此处输入图像描述

我想将值“0”的条形图设为红色,将值“1”的条形图设为绿色。

有人可以帮我吗?

先感谢您。

4

2 回答 2

3

你正在寻找?scale_nominal. 缩放与 with 不同ggplot2- 只有三个缩放

library(ggvis)

set.seed(0)
dat <- data.frame(Survived = factor(sample(0:1, 50, rep=T)))

dat %>% ggvis(~Survived, fill=~Survived) %>%
  layer_bars() %>%
  scale_nominal("fill", range = c("red", "green"))
于 2015-07-04T17:57:31.370 回答
1

使用 mutate 来自dplyr

library(dplyr)

train %>% mutate(mycolours = ifelse(Survived == 0, "red", "green")) %>%
    ggvis(~Survived, fill := ~mycolours) %>%
    layer_bars()
于 2015-07-04T17:35:04.663 回答