我正在尝试将实体在谷歌地图上的运动绘制为一组使用的有向线ggmap.目前我正在使用从中绘制线段的geom_segment调用ggplot2.但是,如果1->2->1线条重叠,则运动中存在周期.这使得从可视化中找出运动变得更加困难.
有没有办法弯曲线段来处理这个?或者我可以尝试其他方法或库吗?
我有3个顶点表示为连接三条边的图中的点.我想将边缘弯曲到三角形的中心(c(.5, .35)).如何在ggplot2中将图形1转换为图形2(我假设这个答案也可以推广到基础?虽然顶点保持稳定,但曲线边缘有一些理想的抖动.我认为这意味着某种线性变换,有一些稍微随机的常数.
图1

图2(颜色仅用于突出显示所需的输出)

library(ggplot2); library(scales)
## The vertices/points data
point x y
1 A 0.25 0.45
2 B 0.50 0.25
3 C 0.75 0.45
## The edges data
out.x out.y receiver.x receiver.y
1 0.25 0.45 0.50 0.25
2 0.50 0.25 0.75 0.45
3 0.75 0.45 0.25 0.45
4 0.25 0.45 0.50 0.25
5 0.50 0.25 0.75 0.45
6 0.75 0.45 0.25 0.45
## Edges and vertices/points data in dput form for ease
so <- structure(list(out.x = …Run Code Online (Sandbox Code Playgroud)