私はggplot2で作成できるサニーキーのようなプロットを作成したいと思います。開始点と終了点の間に曲線があります。私はggplot2の開始点と終了点の間に曲線を補間する
library(ggplot2)
ggplot(df) +
geom_path(aes(x= X, y= Y, group = Line))
ます:
df <- data.frame(Line = rep(letters[1:4], 2),
Location = rep(c("Start", "End"), each=4),
X = rep(c(1, 10), each = 4),
Y = c(c(1,3, 5, 15), c(9,12, 14, 6)),
stringsAsFactors = F)
例::
Line Location X Y
1 a Start 1 1
2 a End 10 9
とこのようになりますプロットを作成します現在、私は次のようになり、データを持っていますデータが次のように表示されるようにしてください:
これは、データを設定するための別のオプションです:
df2 <- data.frame(Line = letters[1:4],
Start.X= rep(1, 4),
Start.Y = c(1,3,5,15),
End.X = rep(10, 4),
End.Y = c(9,12,14,6))
例:
Line Start.X Start.Y End.X End.Y
1 a 1 1 10 9
私はベースRのグラフィックスに曲線を追加する方法の例を見つけることができますこれらの例では、その曲線を描くためにポイント間のデータフレームを取得する方法を示していません。データ操作にdplyr
を使用することをお勧めします。私は補間された点のテーブルを作成するためにfor-loopが必要になると思います。
これらの例は似ていますが、S字カーブを生成しない:
Plotting lines on map - gcIntermediate
http://flowingdata.com/2011/05/11/how-to-map-connections-with-great-circles/
は、事前にありがとうございます!
私は完全にこれがどのように機能するかを理解していないが、トリックを行うようです!あなたのコメントを書き留めておきます。これは、これが示唆している関係です。私はまた、あなたがこの質問に答えたスピードを認めたいと思っています。 – yake84