6

散布図に入れたいデータがいくつかあり、チャート上のポイントをロールオーバーすると、バブル ポップアップが表示され、識別情報が表示されます。

たとえば、生徒の名前、身長、体重を含むデータ フレームがある場合、身長と体重をそれぞれ x 軸と y 軸にプロットしたいと思います。次に、プロット上の個々のポイントをロールオーバーすると、生徒の名前とともにバブルがポップアップします。

plot()呼び出された基本で使用されるやや似た機能がありますがidentify()、ポイントをクリックする必要があり、ポイントを離れても消えません。

サンプルの df とプロット/識別コードは次のとおりです。

> dput(df1)
structure(list(id = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10), var1 = c(0.469521932071075, 
0.077109789242968, 0.076340542640537, 0.461061101639643, 0.347079795086756, 
0.425340321380645, 0.738443679409102, 0.00931701785884798, 0.267918228404596, 
0.722170797875151), var2 = c(0.265150599181652, 0.557858553016558, 
0.715832461370155, 0.186717337928712, 0.626156869810075, 0.1359783844091, 
0.67408229294233, 0.528320853365585, 0.241800826275721, 0.80992470192723
), names = c("jim", "nancy", "suzy", "mark", "alex", "jen", "luz", 
"jeff", "paula", "amir")), .Names = c("id", "var1", "var2", "names"
), row.names = c(NA, -10L), class = "data.frame")

plot(df1$var1, df1$var2);grid()
identify(df1$var1, df1$var2, labels = df1$names)

いくつかのポイントをクリックした後の例を次に示します。

ここに画像の説明を入力

助言がありますか?

4

1 に答える 1

6

TeachingDemos パッケージのHTKidentifyおよびHWidentify関数を使用すると、散布図を作成し、マウスをデータ ポイントに合わせると情報がポップアップ表示され、新しいポイントに移動すると情報が消えます。1 つ目は Tk を必要とし、2 つ目は Windows 専用で、どちらも ggplot2 を使用しません (ただし、どちらも純粋な R コードであるため、ggplot2 または他の拡張機能で動作するように変更する方法を見つけることができます)。

于 2012-12-07T20:06:41.370 に答える