【问题标题】:I is there an R function for transforming map projection to the Waterman Butterfly?我是否有用于将地图投影转换为 Waterman Butterfly 的 R 函数?
【发布时间】:2019-02-04 00:55:22
【问题描述】:

我需要使用 R 在Waterman Butterfly projection 中绘制世界地图。我熟悉的映射包(maps、ggmap、mapproj、leaflet)都不允许这种转换。

是否有人熟悉我可以使用的方法或功能?谷歌没有帮助。

我确实找到了一个允许转换的javascript D3 plugin,但我不知道 javascript,而且我所做的关于将 D3/javascript 绑定到 R 的阅读令人生畏。如果您知道在 R 中使用此 D3 函数的简化方法,我将非常感激。

我开始的一个简单示例,包括从 mapproj 库中随机选择的投影的转换:

library(ggplot2)
library(mapproj)
ggplot(data = map_data('world'), aes(x=long, y=lat, group = group))+
geom_polygon(fill="black")+
coord_map(projection="guyou")+
theme(panel.background = element_rect(fill = "white"),
panel.grid.major = element_line(color="grey"),
axis.text = element_blank(),
axis.title = element_blank(),
axis.ticks = element_blank())

【问题讨论】:

  • 感谢@Hack-R,我编辑了问题以删除对包请求的引用并添加了一个最小工作示例。

标签: r d3.js maps projection map-projections


【解决方案1】:

查看 R 的 HTMLWidgets 插件,它可以更轻松地在 JS 和 R 之间集成。

这是他们docs的链接。

您需要像他们使用 Sigma 的示例一样导入 D3。

但是,由于您只是在寻找 D3,因此还有 R2D3,它非常精简。

【讨论】:

  • 这是一个很好的发现,但请提供一个工作示例或将基于链接的答案重定向到评论(无论如何这是官方的做法)。很棒的发现!
  • 这是一个很棒的发现,我将进一步探索......虽然在第一次通过时,我需要一些时间才能弄清楚如何完成这项工作。您的链接确实将我带到了r2d3maps 包,这是一种从 sf 对象制作简单 D3 地图的非常简单的方法......对于了解 javascript 的人来说,感觉就像是一只脚。不幸的是,我不知道如何合并或引用插件才能使用 d3-geo-projection 的扩展投影。
猜你喜欢
  • 1970-01-01
  • 2018-12-19
  • 1970-01-01
  • 1970-01-01
  • 2019-09-07
  • 1970-01-01
  • 1970-01-01
  • 2014-07-06
  • 2020-08-12
相关资源
最近更新 更多