【问题标题】:How to generate a geographical heat map in MATLAB? (worldwide, country-level granularity)如何在 MATLAB 中生成地理热图? (全球,国家级粒度)
【发布时间】:2013-06-10 14:20:25
【问题描述】:
我想在 MATLAB 中创建如下所示的地理热图:
每种颜色都基于一个国家列表,每个国家都有一个百分比:
有代码的国家/地区:命中百分比
- 美国(美国):36.29%
- 印度 (IN):18.24%
- 英国 (GB):12.93%
- 西班牙(ES):8.22%
- 澳大利亚 (AU):3.32%
- 加拿大(加利福尼亚州):3.05%
- 德国 (DE):2.49%
- 荷兰 (NL):1.66%
- 以色列 (IL):1.39%
- 中国(中):0.83%
如何在 MATLAB 中做到这一点?
【问题讨论】:
标签:
matlab
visualization
heatmap
【解决方案1】:
您应该参考一些地球科学工具箱,例如this one。
这种可视化在D3.js 中也是微不足道的。所以你也可以将数据输出到一个json左右,然后用D3.js绘制出来。
【讨论】:
-
感谢地球科学链接,我查看了一些工具箱,但到目前为止我还没有走运。关于 D3.js,我确实在考虑使用 Web 框架,因为它看起来很简单,例如 developers.google.com/chart/interactive/docs/gallery/… 或确实是 D3.js,但 Web 解决方案的问题是我无法轻松生成输出文件(PNG/PDF/等等)。我觉得具有讽刺意味的是,在这种可视化方面,Web 框架似乎严重击败了 4 美元的 MATLAB,因此我的问题是,我希望 MATLAB 应该有一个简单的解决方案。
-
同意。如果您的目标是一个集成系统,恐怕没有那么多 3rdparty matlab 可视化库,因为内部可视化实用程序已经足够好(真的吗?)。对于更专业的应用程序,您应该使用更专业的工具包,您可以查找 cpp 库,并编译 mex 并集成到您的系统中。例如。 VTK。但是这些库太重了。