1

変数に応じてバーの不透明度を変更したい

library(dplyr)
library(ggvis)
df <- data.frame(x=c(1,2),y=c(6,3),op=c(0.2,0.8))

df %>%
  ggvis(x=~x,y=~y) %>%
  layer_bars(opacity:=~op)

エラーを生成します

Error in eval(expr, envir, enclos) : object 'op' not found
4

1 に答える 1

1

これはうまくいくようです....

df %>%
  ggvis(x=~x,y=~y, fillOpacity :=~ df$op) %>%
  layer_bars()

それはこれを生成します:

ここに画像の説明を入力

これは基本的にこれを行うことと同等です:

df %>%
  ggvis(x=~x,y=~y, fillOpacity :=~ c(0.2,0.8)) %>%
  layer_bars()

各 y 変数に 1 つの値が割り当てられているため、機能します。以下が機能しない理由はわかりませんが、そうすべきだと思います。おそらく誰かが啓発することができます...

df %>%
  ggvis(x=~x,y=~y, fillOpacity :=~ op) %>%
  layer_bars()

または、コードを使用して、これを行うと...

df %>%
  ggvis(x=~x,y=~y) %>%
  layer_bars(opacity:=~df$op)

次に、すべてが不透明色で色付けされているため、バーの境界線を削除します...

ここに画像の説明を入力

于 2014-12-31T19:36:27.927 に答える