问题标签 [cartopy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1406 浏览

python - 使用 Cartopy 重新投影图像的难度

我在使用 Cartopy 重新投影图像时遇到问题。

我有以下代码(从此处找到的示例修改):

生成以下图像板卡瑞

但是,当我尝试选择不同的投影时,比如 Lambert Conformal,通过替换

我得到以下图像:

兰伯特保形

如您所见,此图像有问题。我究竟做错了什么?是否可以在不同的投影中显示此图像?

0 投票
1 回答
1914 浏览

python - 如何在 Python Tkinter GUI 中嵌入 Cartopy?

我想在 Python (2.7) Tkinter GUI 应用程序(在 Windows 7 PC 上)中嵌入 Cartopy 模块映射,但我需要帮助弄清楚如何。

据我了解,Cartopy 模块只是使 matplotlib 能够将其“绘图”或绘图视为坐标,并将这些投影到现实世界的地理投影中。现在我已经看到了有关如何将 matplotlib 嵌入 Tkinter 的问题和指南,但这些总是涉及创建一个 matplotlib Figure(),然后在该图上使用 show() 方法和 FigureCanvasTkAgg(),而创建 cartopy 地图的说明通常是简单地使用 pyplot 的 axes() 方法,同时提供 cartopy 投影对象,然后将 show() 与 pyplot 模块(而不是 Figure 对象)一起使用。我尝试了一些不同的方法,但我无法理解如何协调这两种方法(创建一个 cartopy matplotlib 并将 matplotlib 嵌入 Tkinter)。我有制图、Python 和 Tkinter 方面的经验,

如果有人可以提出一个具体的代码示例以及他们的答案,那将是最有帮助的。也很高兴看到我如何在新的嵌入式 cartopy 地图中绘制线或点的示例,例如我在哪个对象上使用 .plot() 方法?

从长远来看,希望能够通过 Tkinter GUI 应用程序与 cartopy 地图进行交互。顺便说一句,以前有没有人做过这样的 cartopy Tkinter 嵌入?

---> 回答:感谢@Pelson 的回答,并提供代码示例。对于其他有同样问题的人,据我所知,关键步骤是 1)创建一个 matplot 图,2)通过包含投影参数向图中添加轴(从而使其成为 Cartopy 轴),以及 3)转换图通过在 Tkinter 小部件上使用 FigureCanvasTkAgg 函数,然后使用其 show() 和 get_tk_widget() 方法将小部件打包或放置在 Tkinter 窗口中。

0 投票
1 回答
8452 浏览

cartopy - How to add custom shapefile to map using cartopy

Using basemap I used to add my custom boundary shapefile like this:

How can I do the same using cartopy?

I tried this:

but that's not working..

0 投票
2 回答
1761 浏览

python - 绘制投影数据时的 Cartopy 行为

我正在使用 cartopy 绘制我的地图。它是一个很棒的工具!对于我的一些数据,我遇到的问题是数据未正确映射到 0deg 或日期线周围。请参见下面的示例。

我知道 matplotlib.basemap 中的相同功能,可以通过使用 add_cyclic 例程来解决。我想知道是否有人可以推荐如何在 cartopy 中最好地解决这个问题。

谢谢!

亚历克斯

卡托普问题

0 投票
1 回答
1045 浏览

python - 使用源文件安装 Cartopy

我正在尝试在 Windows 上为 Anaconda 安装 Cartopy。但是,似乎没有为 Windows 准备好的源文件。我可以在其他任何地方获取文件窗口吗?

0 投票
1 回答
2358 浏览

matplotlib - cartopy:如何在地图上添加图像

如何在地图上叠加自定义图像?

如果我做

我的图像在轴上正确显示。但是,如果我尝试添加背景地图图像,我的图像将不再出现:

结果只是地图图像。

这是因为地图图像实际上只是一个仅在绘图命令中生成地图图像并因此破坏我的图像的工厂?

0 投票
1 回答
1387 浏览

cartopy - 在 cartopy 轴之间画线

我绘制了两组重叠的轴,一组是另一组的缩放版本。我想在缩放轴的角和它在较大轴上表示的矩形的角之间画线。但是,我画的线条稍微偏离了位置。我试图把它浓缩成一个简单的例子:

使用以下输出: 在此处输入图像描述

我认为这是因为我在调用时明确定义了轴的形状/方面plt.axes(),并且此形状与 cartopy 轴的形状不匹配,因为它们是使用旨在使地图看起来正确的纵横比绘制的。我可以在调用中调整轴的形状,以plt.axes()使纵横比与地图的纵横比相匹配,并且在我期望的位置绘制线条,但这并不容易!有没有办法在坐标变换中解决这个问题?

0 投票
1 回答
957 浏览

python - matplotlib 艺术家中的多边形包含测试

我有以下代码,最初是从这里收集的。,它使用matplotlib,shapely,cartopy来绘制世界地图。

单击时,我需要确定它是在哪个国家/地区进行的。我可以向pick_event画布添加回调,但是,它会在每个艺术家上调用。(cartopy.mpl.feature_artist.FeatureArtist,对应于一个国家)。

给定一个艺术家和一个具有 x、y 坐标的鼠标事件,我如何确定包含?

我试过artist.get_clip_box().contains了,但它不是真正的多边形,而是一个普通的矩形。

s的默认包含测试FeatureAristNone,所以我必须添加自己的包含测试。

如何在 FeatureArtist 中正确检查鼠标事件点的包含情况?

0 投票
1 回答
4665 浏览

python-2.7 - 类似于 Matplotlib-Basemap 的 3D CartoPy

我是 Python 新手,有一个关于 Cartopy 能否用于 3D 绘图的问题。下面是一个使用matplotlibBasemap.

这将在 3D 轴内创建地图,以便您可以在曲面上绘制对象。但是随着 Cartopy 返回一个matplotlib.axes.GeoAxesSubplot. 不清楚如何使用matplotlib-basemap.

那么,有人可以就如何使用 Cartopy 制作类似的 3D 绘图给出任何指示吗?

0 投票
1 回答
821 浏览

python - numpy 数组的 imshow 无法在 Cartopy 中按预期工作

我正在尝试将 Aster GDEM 数据与 cartopy 一起使用,但没有成功:假设我有一个我知道地理范围的 numpy 数组。我应该能够将它绘制为一个图层,比如来自 cartopy.io.img_tiles 的 GoogleTile。

示例代码:

产生:

在此处输入图像描述

数据不显示!

如果我发表评论ax.set_extent(extent),则显示数据但范围错误:

在此处输入图像描述

有什么建议么?