0

私はこの質問をggvisGoogle グループに尋ねましたが、その質問を見ていない人が何かアイデアを持っている場合に備えて、ここに再投稿すると思いました。

現在のバージョンの ggvis では完全に複製できない可能性があることは認識していますが、次のチャートをある程度複製しようとしています。

http://next.mlssoccer.com/standings/weekly

このようなチャートがどのように見えるかのサブセットを形成するデータの例を次に示します。

   team1 matchno rank
1     OS       1    1
2     AX       1    3
3     OS       2    1
4     DU       1    2
5     OS       3    1
6     MP       1    2
7     AX       2    3
8     DU       2    4
9     AX       3    2
10    MP       2    2
11    DU       3    3
12    MP       3    1
13    AX       4    3
14    OS       4    1
15    DU       4    4
16    OS       5    1
17    MP       4    2
18    OS       6    1
19    DU       5    4
20    AX       5    3
21    MP       5    2
22    AX       6    3
23    MP       6    2
24    DU       6    4

これが私のインタラクティブ性でどこまで到達したかです:

  library(ggvis)
mydf  %>%
      ggvis(~matchno,~rank, stroke = ~team1) %>%
      layer_points(size := 50, size.hover := 200, fill = ~team1) %>%
      layer_lines(stroke.hover = ~team1, strokeWidth.hover := 4, strokeWidth := 2) %>%
      add_axis("x", title="Match number",  subdivide = 0, values = seq(1, 6, by = 1), format="####") %>%
      add_axis("y", title="Rank", subdivide = 0, values = seq(1, 4, by = 1), format='####') %>%
      scale_numeric("y", reverse=TRUE)

だから私の質問は次のようになります:

1) 別の行がホバーされている場合、他の行をより不透明にすることは可能ですか?

2) 線の上にカーソルを置き、マウスをデータ ポイントの上に移動すると、線の太さ/色の変化が元の線の色と太さに戻ります。その線上のポイントにカーソルを合わせたときに線を太く保つことは可能ですか?

3) 線の上にカーソルを置いたときにポイントのサイズを大きくすることは可能ですか?

これらの質問への答えは と関係があるかもしれないと推測していますがlinked_brush、2 つのプロット間ではなく、同じプロット内にあるのでしょうか?

これは、オレンジ色の線の上にカーソルを置き、厚さを増やしてグラフ化した上記のデータです。現在、オレンジ色のデータ ポイントにカーソルを合わせると、この厚さはなくなります。また、別の行にカーソルを合わせても、他の行はフェードしません。

ここに画像の説明を入力


#data:

       mydf <-data.frame(
team1 =  c("OS", "AX", "OS", "DU", "OS", "MP", "AX", "DU", "AX", "MP", "DU", "MP", "AX", "OS", "DU", "OS", "MP", "OS", "DU", "AX", "MP", "AX", "MP", "DU"),
matchno = c(1, 1, 2, 1, 3, 1, 2, 2, 3, 2, 3, 3, 4, 4, 4, 5, 4, 6, 5, 5, 5, 6, 6, 6),
rank =  c(1, 3, 1, 2, 1, 2, 3, 4, 2, 2, 3, 1, 3, 1, 4, 1, 2, 1, 4, 3, 2, 3, 2, 4) )
4

0 に答える 0