2

を始めたばかりggvisです。特に興味深い、または一般的な質問ではありませんがsize、行にプロパティを追加する方法は明らかではありません。特に、を使用して次のプロットをどのように複製しますggvisか?

library(ggplot2)

df <- data.frame(
  id = c(1,1,1,2,2,2,2),
  x  = c(1,2,3,1,2,3,4),
  y  = c(2,3,4,1,1,2,3)
)

ggplot(df, aes(x, y, colour = as.factor(id), size = id)) +
  geom_line()

また、十分に評判の高い人がggvisタグを作成できますか? 乾杯。

4

1 に答える 1

4

以下:

library(ggvis)

gg <- ggvis(df, props(~x, ~y, stroke = ~factor(id)))
gg <- gg + layer_line(props(strokeWidth := ~id*4))
gg

生成:

プロット

の乗数を微調整しstrokeWidthて少し厚くする必要がありましたが、それはあなたにとって良い出発点になるはずです. RememberはVegaggivsに基づいているため、新しいグラフィックス文法の用語に慣れることは、.ggvis

これをより適切に行う例を以下に示します (さらに のggplot2ようにscale_quantitative:

gg <- ggvis(df, props(~x, ~y, stroke = ~factor(id)))
gg <- gg + layer_line(props(strokeWidth = ~id)) 
gg <- gg + scale_quantitative("strokeWidth",
                              trans="linear", 
                              domain=range(df$id), 
                              range=c(1,10))
gg

平方

「スケール」オンラインの例?scale_quantitativeを実行または確認すると、目的の効果を得るためのオプションの良いアイデアが得られます。

また、2 番目の例で=" "と " "を使用していることにも注意してください。サイト:=から:ggvis

props() 関数は、マッピング (スケーリング) には = 演算子を使用し、設定 (スケーリングなし) には := 演算子を使用します。また、 ~ 演算子を使用して、データで式を評価する必要があることを示します (ggvis では、データが変更される可能性があります)。~ 演算子がない場合、式は現在の環境ですぐに評価されます。

于 2014-03-22T21:09:55.317 に答える