我创建了美国各州之间流量数据的网络图。对于每个顶点,我有状态的纬度/经度。网络图和美国地图在R
我希望重新创建一个网络类型的图表,显示边缘,除了我设置每个顶点的位置是他们的地理位置,并在背景中有一个状态边界地图。
我正在使用igraph创建我的网络。 ggplot2中有一些很酷的映射例子,所以我想知道这是否是一个选项。我相信我已经使用Pajek看到类似的选项,但我希望留在R
任何想法/洞察力,将不胜感激。
- 布洛克
我创建了美国各州之间流量数据的网络图。对于每个顶点,我有状态的纬度/经度。网络图和美国地图在R
我希望重新创建一个网络类型的图表,显示边缘,除了我设置每个顶点的位置是他们的地理位置,并在背景中有一个状态边界地图。
我正在使用igraph创建我的网络。 ggplot2中有一些很酷的映射例子,所以我想知道这是否是一个选项。我相信我已经使用Pajek看到类似的选项,但我希望留在R
任何想法/洞察力,将不胜感激。
你必须处理映射多个包。最容易的是maps
,它给你的国家地图。您可以使用坐标来绘制顶点。
map("state")
points(longitute,latitude)
这些图可以使用基本工具进行操纵和添加,请记住x轴是经度,y轴是纬度。可以使用segments()
函数绘制边缘。
在ggplot2中,只需使用map_data()
函数,该函数为您提供地图的形状数据,然后使用geom_polygon()
以任何形式将其添加到图形中。再次,您可以使用相应的ggplot2函数geom_point()
和geom_segment()
使用坐标添加顶点和边。您链接的代码会告诉您如何或以其他方式查看this的示例。
接下来,您可以看看提供更多功能的包maptools
和允许对同一地图进行不同投影的mapproj
。您也可以使用这些包来计算坐标系中的地理距离。
mapdata
包含更多的数据库,基本覆盖了整个世界。你可以很好地处理坐标。