cartopy.mpl.geoaxes.GeoAxes#
- class cartopy.mpl.geoaxes.GeoAxes(*args, **kwargs)[源代码]#
基类:
Axes
的子类
matplotlib.axes.Axes
它代表一张地图Projection
.此类取代Matplotlib
Axes
类创建时 projection 关键字例如::# Set up a standard map for latlon data. geo_axes = plt.axes(projection=cartopy.crs.PlateCarree()) # Set up a standard map for latlon data for multiple subplots fig, geo_axes = plt.subplots(nrows=2, ncols=2, subplot_kw={'projection': ccrs.PlateCarree()}) # Set up an OSGB map. geo_axes = plt.subplot(2, 2, 1, projection=cartopy.crs.OSGB())
当将源投影提供给其绘制方法之一时,使用 transform 关键字,标准Matplotlib绘图结果从源坐标转换为目标投影。例如::
# Plot latlon data on an OSGB map. plt.axes(projection=cartopy.crs.OSGB()) plt.contourf(x, y, data, transform=cartopy.crs.PlateCarree())
使用标准matplotlib创建GeoAxes对象
Axes
args和kwargs。- 参数:
projection (cartopy.crs.Projection) -- 该轴的目标投影。
- add_feature(feature, **kwargs)[源代码]#
添加给定的
Feature
实例到轴。- 参数:
feature -- 的实例
Feature
.- 返回:
A
cartopy.mpl.feature_artist.FeatureArtist
实例--负责绘制要素的实例。
备注
Matplotlib关键字参数可以在绘制特征时使用。这允许对“faceccolor”、“alpha”等方面进行标准Matplotlib控制。
- add_geometries(geoms, crs, **kwargs)[源代码]#
将给定的shapely几何形状(在给定的crs中)添加到轴上。
- 参数:
geoms -- 一系列精美的几何形状。
crs -- 其中定义了所提供的几何形状的制图CRS。
styler -- 一个可调用对象,返回给定几何形状的matplotlib补丁样式。
- 返回:
A
cartopy.mpl.feature_artist.FeatureArtist
实例--负责绘制要素的实例。
备注
Matplotlib关键字参数可以在绘制特征时使用。这允许对“faceccolor”、“alpha”等方面进行标准Matplotlib控制。
- add_image(factory, *args, **kwargs)[源代码]#
将图像“工厂”添加到轴。
添加的任何图像“工厂”都将被要求在绘制时检索具有给定边界框的相关元数据的图像。这种方法的优点是,在添加图像工厂时不需要知道地图的限制,但可以推迟到添加了可能影响限制的所有内容。
- 参数:
factory -- 目前,图像“工厂”只是一个具有
image_for_domain
法图像工厂的例子包括cartopy.io.img_nest.NestedImageCollection
和cartopy.io.img_tiles.GoogleTiles
.
- add_raster(raster_source, **slippy_image_kwargs)[源代码]#
将给定的格栅源添加到地理轴。
- 参数:
raster_source --
cartopy.io.RasterSource
类似的例子raster_source
可以是实现RasterSource接口的任何对象,包括诸如WMSRasterSource
和WMTSRasterSource
. 请注意,图像检索是在绘制时进行的,而不是在创建时进行的。
- add_wms(wms, layers, wms_kwargs=None, **kwargs)[源代码]#
将指定的GMS层添加到轴。
该功能需要owslib和PIL才能工作。
- 参数:
wms (string or
owslib.wms.WebMapService
instance) -- 要使用的网络地图服务URL或owslib GMS实例。layers (string or iterable of string) -- 要使用的层的名称。
wms_kwargs (dict or None, optional) -- 传递到
WMSRasterSource
构造函数的getmap_extra_kwargs
用于定义getmap时间关键字参数。
所有其他关键词都传递给图像艺术家的构建。看到
imshow()
了解更多详细信息。
- add_wmts(wmts, layer_name, wmts_kwargs=None, **kwargs)[源代码]#
将指定的WMSG层添加到轴。
该功能需要owslib和PIL才能工作。
- 参数:
wmts -- WMSG或owslib.wmts. WebMapTilService实例的URL。
layer_name -- 要使用的图层的名称。
wmts_kwargs (dict or None, optional) -- 传递到
WMTSRasterSource
构造函数的gettile_extra_kwargs
(e.g.时间)。
所有其他关键词都传递给图像艺术家的构建。看到
imshow()
了解更多详细信息。
- annotate(text, xy, xytext=None, xycoords='data', textcoords=None, *args, **kwargs)[源代码]#
将“transform”关键字添加到
annotate()
.- 参数:
transform -- A
Projection
.
- autoscale_view(tight=None, scalex=True, scaley=True)[源代码]#
使用数据限制自动缩放视图限制,同时考虑地理轴的投影。
看到
imshow()
了解更多详细信息。
- background_img(name='ne_shaded', resolution='low', extent=None, cache=False)[源代码]#
将背景图像从CARTOPY_UTE_CLARGROUP GROUP环境变量指定的目录中保存的精选预先准备的图像中添加到地图中。该目录使用funcc检查:' self.read_user_background_images '并且需要包含定义图像元数据的SON文件。
- 参数:
name (optional) -- 根据JSON文件的内容读取的图像的名称。一个典型的文件可能有,例如:'ne_shaded':自然地球阴影浮雕'ne_grey':自然地球灰色地球。
resolution (optional) -- 根据SON文件的内容,要读取的图像的分辨率。典型的文件可能针对图像的每个名称包含以下内容:“low”、“med”、“High”、“vhigh”、“full”。
extent (optional) -- 使用放大到小区域的高分辨率背景图像将花费很长时间进行渲染,因为图像是全局准备的,即使只使用小区域。添加范围将仅呈现特定的地理区域。指定为 [longitude start, longitude end, latitude start, latitude end] . 例如 [-11, 3, 48, 60] 对英国 或 [167.0, 193.0, 47.0, 68.0] 跨越日期线。
cache (optional) -- 是否将加载的图像缓存到内存中的逻辑标志。在使用范围之前存储图像。
- barbs(x, y, u, v, *args, **kwargs)[源代码]#
绘制一片倒刺区域。
- 参数:
x -- 包含数据点x位置的数组。
y -- 包含数据点y位置的数组。
u -- u方向上的一个载体数据数组。
v -- v方向上的向量数据数组。
transform (
cartopy.crs.Projection
or Matplotlib transform) -- 定义载体的坐标系。regrid_shape (int or 2-tuple of ints) -- 如果给出,则指定倒刺所在的点将被内插到投影空间中的规则网格上。如果给出单个整元,则该整元将用作最小网格长度维度,而另一维度将根据目标范围的长宽比按比例放大。如果给定一对int,它们分别确定x和y方向上的网格长度。
target_extent (4-tuple) -- 如果给出,则指定常规网格在目标CRS中定义的范围 regrid_shape 将会有。扩展到地图投影的当前范围。
看到
matplotlib.pyplot.barbs()
有关参数和其他关键字参数的详细信息。备注
向东网格和向北网格必须定义为网格。
- coastlines(resolution='auto', color='black', **kwargs)[源代码]#
添加沿海 outlines 到自然地球“海岸线”Shapetime集合中的当前轴。
- 参数:
resolution (str or
cartopy.feature.Scaler
, optional) -- 从自然地球数据集使用的命名分辨率。目前可以是“Auto”(默认)、“110 m”、“50 m”和“10 m”之一,或Scaler对象。 如果选择“自动”,则分辨率由以下公式定义auto_scaler
.
- contour(*args, **kwargs)[源代码]#
将“transform”关键字添加到
contour()
.- 参数:
transform -- A
Projection
.transform_first (bool, optional) -- 如果为True,这将在计算轮廓之前将输入参数转换到投影空间,这比在数据空间中计算轮廓并投影填充的多边形快得多。使用此方法无法处理包裹坐标,并且可能会在域中间产生误导性的轮廓。要使用投影空间方法,必须提供输入参数X和Y并且是2维的。默认值为False,用于计算数据空间中的轮廓。
- contourf(*args, **kwargs)[源代码]#
将“transform”关键字添加到
contourf()
.- 参数:
transform -- A
Projection
.transform_first (bool, optional) -- 如果为True,这将在计算轮廓之前将输入参数转换到投影空间,这比在数据空间中计算轮廓并投影填充的多边形快得多。使用此方法无法处理包裹坐标,并且可能会在域中间产生误导性的轮廓。要使用投影空间方法,必须提供输入参数X和Y并且是2维的。默认值为False,用于计算数据空间中的轮廓。
- draw(renderer=None, **kwargs)[源代码]#
扩展标准行为
matplotlib.axes.Axes.draw()
.在调用标准Matplotlib绘制之前绘制图像工厂结果。如果尚未设置限制,则使用全局范围。
- get_tightbbox(renderer=None, *args, **kwargs)[源代码]#
扩展标准行为
matplotlib.axes.Axes.get_tightbbox()
.调整轴的长宽比和背景补丁的位置,然后计算紧边界框。
- gridlines(crs=None, draw_labels=False, xlocs=None, ylocs=None, dms=False, x_inline=None, y_inline=None, auto_inline=True, xformatter=None, yformatter=None, xlim=None, ylim=None, rotate_labels=None, xlabel_style=None, ylabel_style=None, labels_bbox_style=None, xpadding=5, ypadding=5, offset_angle=25, auto_update=None, formatter_kwargs=None, **kwargs)[源代码]#
在绘制时自动将网格线添加到给定坐标系中的轴。
- 参数:
crs (optional) -- 的
cartopy._crs.CRS
定义绘制网格线的坐标系。默认为cartopy.crs.PlateCarree
.draw_labels (optional) -- 切换是否绘制标签。为了更好地控制,
Gridliner
可以单独修改。默认为假。 - 字符串:“x”或“y”仅绘制相应的标签 在CRS中协调。- 列表:可以包含侧面标识符和/或坐标 类型以选择要绘制的类型。 对于所有使用的标签["x", "y", "top", "bottom", "left", "right", "geo"]
. - dict:密钥是侧标识符 (“顶部”、“底部”、“左”、“右”)并且值是 坐标(“x”、“y”);这样您就可以精确地 决定绘制什么样的标签以及在哪里。 对于底部的x标签和右侧的y标签, 可以通过{"bottom": "x", "left": "y"}
. 请注意,默认情况下,除非明确要求,否则x和y标签不会分别绘制在左/右和上/下边缘。xlocs (optional) -- 网格线位置的迭代项或
matplotlib.ticker.Locator
实例,该实例将用于确定网格线在给定CRS的x坐标中的位置。返回到无,这意味着自动定位网格线。ylocs (optional) -- 网格线位置的迭代项或
matplotlib.ticker.Locator
实例,该实例将用于确定网格线在给定CRS的y坐标中的位置。返回到无,这意味着自动定位网格线。dms (bool) -- 当使用默认的经度和纬度定位器和格式器时,如果分钟设置为True,而不是分数,则刻度可以在分钟和秒上停止。此关键字传递给
Gridliner
并且如果显式设置xlocs和ylocs则没有效果。x_inline (optional) -- 切换绘制的x标签是否应内联。
y_inline (optional) -- 切换绘制的y标签是否应内联。
auto_inline (optional) -- 根据投影自动设置x_inline和y_inline
xformatter (optional) -- A
matplotlib.ticker.Formatter
实例来格式化x坐标网格线的标签。它默认为无,这意味着使用cartopy.mpl.ticker.LongitudeFormatter
开始与dms
论点,如果crs是PlateCarree
类型.yformatter (optional) -- A
matplotlib.ticker.Formatter
实例来格式化y坐标网格线的标签。它默认为无,这意味着使用cartopy.mpl.ticker.LatitudeFormatter
开始与dms
论点,如果crs是PlateCarree
类型.xlim (optional) -- 为网格线设置限制,以便它们不会一直延伸到边界的边缘。xlim可以是单个数字或(min,max)多元组。如果是单个数字,则限制为(-xlim,+xlim)。
ylim (optional) -- 为网格线设置限制,以便它们不会一直延伸到边界的边缘。ylim可以是单个数字或(min,max)多元组。如果是单个数字,则限制为(-ylim,+ylim)。
rotate_labels (optional, bool, str) -- 允许旋转非内联标签。 - 否:不旋转标签。- True:平行于网格线旋转标签。- 无:除某些投影外不旋转(默认)。- 浮动:按照此值(以度为单位)旋转标签。
xlabel_style (dict) -- 一本词典传递给
ax.text
在x标签上创建文本标签的样式。ylabel_style (dict) -- 一本词典传递给
ax.text
在y标签上创建用于文本标签样式的标签。labels_bbox_style (dict) -- 所有文本标签的bbox样式。
xpadding (float) -- x标签的填充。如果为负,则在地图内部绘制标签。
ypadding (float) -- y标签的填充。如果为负,则在地图内部绘制标签。
offset_angle (float) -- 以度为单位的角度差以定义何时必须翻转标签以更具可读性。例如,值为10时,垂直顶部标签只能翻转100度。
auto_update (bool, default=True) -- 刷新情节时是否更新网格线和标签。 ..已废弃::0.23 未来,网格线和标签将始终更新。
formatter_kwargs (dict, optional) -- 传递给默认格式器的选项。看到
LongitudeFormatter
和LatitudeFormatter
Parameters (Keyword)
------------------
**kwargs -- 所有其他关键字都控制行属性。 这些都传递给
matplotlib.collections.Collection
.
- 返回:
gridliner -- A
cartopy.mpl.gridliner.Gridliner
instance.
备注
位置和内联设置的“x”和“y”不一定对应于X和Y,而是对应于指定CRS的第一个和第二个坐标。对于PlateCarree网格线的常见情况,这些网格线对应于纬度和纬度。根据地图使用的投影,子午线和平行线可以同时穿过X轴和Y轴。
- hexbin(x, y, *args, **kwargs)[源代码]#
将“transform”关键字添加到
hexbin()
.首先将这些点转换为轴的投影,然后使用轴投影中的数据计算hexbin算法。
- 参数:
transform -- A
Projection
.
- hold_limits(hold=True)[源代码]#
跟踪此上下文管理器生命周期内的原始视图和数据限制,可以选择在管理器退出后将任何更改恢复到原始值。
- 参数:
hold (bool, optional) -- 上下文管理器退出后是否恢复数据和视图限制。 切换到True。
- imshow(img, *args, **kwargs)[源代码]#
将“transform”关键字添加到
imshow()
.- 参数:
img -- 要显示的图像。
transform (
Projection
or matplotlib transform) -- 给定图像为矩形的坐标系。regrid_shape (int or pair of ints) -- 所需图像的形状(如果需要转换)。 如果给出单个整数,则将其用作最小长度维度,而另一个维度将根据目标范围的长宽比按比例放大。默认情况是,转换图像的最小维度长度为750,因此对于转换为全局PlateCarree投影的图像,生成的转换图像的形状将为
(750, 1500)
.extent (tuple) -- 表格中图像的角坐标
(left, right, bottom, top)
.坐标应该位于传递给transform关键字的坐标系中。origin ({'lower', 'upper'}) -- 垂直像素的起源。看到
matplotlib.pyplot.imshow()
了解详情。默认值为'upper'
. 0.18之前,是'lower'
.
- pcolor(*args, **kwargs)[源代码]#
将“transform”关键字添加到
pcolor()
.- 参数:
transform -- A
Projection
.
- pcolormesh(*args, **kwargs)[源代码]#
将“transform”关键字添加到
pcolormesh()
.- 参数:
transform -- A
Projection
.
- quiver(x, y, u, v, *args, **kwargs)[源代码]#
绘制箭头场。
- 参数:
x -- 包含数据点x位置的数组。
y -- 包含数据点y位置的数组。
u -- u方向上的一个载体数据数组。
v -- v方向上的向量数据数组。
transform (
cartopy.crs.Projection
or Matplotlib transform) -- 定义载体的坐标系。regrid_shape (int or 2-tuple of ints) -- 如果给出,则指定箭头所在的点将被插值到投影空间中的规则网格上。如果给出单个整元,则该整元将用作最小网格长度维度,而另一维度将根据目标范围的长宽比按比例放大。如果给定一对int,它们分别确定x和y方向上的网格长度。
target_extent (4-tuple) -- 如果给出,则指定常规网格在目标CRS中定义的范围 regrid_shape 将会有。扩展到地图投影的当前范围。
看到
matplotlib.pyplot.quiver()
有关参数和其他关键字参数的详细信息。备注
向东网格和向北网格必须定义为网格。
- read_user_background_images(verify=True)[源代码]#
读取指定的CARTOPY_USER_PROGRAM GROUNDS环境变量中的元数据以填充background_img的字典。
如果未设置CARTOPY_GROUP_CLARGROUP GROUP,则默认情况下,lib/Cartopy/data/raster/natural_earth/中的图像将可用。
元数据应该是一个标准的JSON文件,它指定了一个两级字典。第一个层次是图像类型。对于每种图像类型,必须有以下字段: __comment__, __source__ 和 __projection__ 然后是一个元素,给出每个分辨率的文件名。
示例SON文件可以在:lib/cartopy/data/raster/natural_earth/images.json
- scatter(*args, **kwargs)[源代码]#
将“transform”关键字添加到
scatter()
.- 参数:
transform -- A
Projection
.
- set(*, adjustable=<UNSET>, agg_filter=<UNSET>, alpha=<UNSET>, anchor=<UNSET>, animated=<UNSET>, aspect=<UNSET>, autoscale_on=<UNSET>, autoscalex_on=<UNSET>, autoscaley_on=<UNSET>, axes_locator=<UNSET>, axisbelow=<UNSET>, boundary=<UNSET>, box_aspect=<UNSET>, clip_box=<UNSET>, clip_on=<UNSET>, clip_path=<UNSET>, extent=<UNSET>, facecolor=<UNSET>, forward_navigation_events=<UNSET>, frame_on=<UNSET>, gid=<UNSET>, in_layout=<UNSET>, label=<UNSET>, mouseover=<UNSET>, navigate=<UNSET>, path_effects=<UNSET>, picker=<UNSET>, position=<UNSET>, prop_cycle=<UNSET>, rasterization_zorder=<UNSET>, rasterized=<UNSET>, sketch_params=<UNSET>, snap=<UNSET>, subplotspec=<UNSET>, title=<UNSET>, transform=<UNSET>, url=<UNSET>, visible=<UNSET>, xbound=<UNSET>, xlabel=<UNSET>, xlim=<UNSET>, xmargin=<UNSET>, xscale=<UNSET>, xticklabels=<UNSET>, xticks=<UNSET>, ybound=<UNSET>, ylabel=<UNSET>, ylim=<UNSET>, ymargin=<UNSET>, yscale=<UNSET>, yticklabels=<UNSET>, yticks=<UNSET>, zorder=<UNSET>)#
一次设置多个属性。
支持的属性有
- 属性:
adjustable: {'box', 'datalim'} agg_filter: a filter function, which takes a (m, n, 3) float array and a dpi value, and returns a (m, n, 3) array and two offsets from the bottom left corner of the image alpha: float or None anchor: (float, float) or {'C', 'SW', 'S', 'SE', 'E', 'NE', ...} animated: bool aspect: {'auto', 'equal'} or float autoscale_on: bool autoscalex_on: unknown autoscaley_on: unknown axes_locator: Callable[[Axes, Renderer], Bbox] axisbelow: bool or 'line' boundary: unknown box_aspect: float or None clip_box:
BboxBase
or None clip_on: bool clip_path: Patch or (Path, Transform) or None extent: unknown facecolor or fc: color figure:Figure
orSubFigure
forward_navigation_events: bool or "auto" frame_on: bool gid: str in_layout: bool label: object mouseover: bool navigate: bool navigate_mode: unknown path_effects: list ofAbstractPathEffect
picker: None or bool or float or callable position: [left, bottom, width, height] orBbox
prop_cycle:Cycler
rasterization_zorder: float or None rasterized: bool sketch_params: (scale: float, length: float, randomness: float) snap: bool or None subplotspec: unknown title: str transform:Transform
url: str visible: bool xbound: (lower: float, upper: float) xlabel: str xlim: (left: float, right: float) xmargin: float greater than -0.5 xscale: unknown xticklabels: unknown xticks: unknown ybound: (lower: float, upper: float) ylabel: str ylim: (bottom: float, top: float) ymargin: float greater than -0.5 yscale: unknown yticklabels: unknown yticks: unknown zorder: float
- set_boundary(path, transform=None)[源代码]#
给定路径,更新
spines['geo']
和patch
.- 参数:
path (
matplotlib.path.Path
) -- 所需边界的路径。transform (None or
matplotlib.transforms.Transform
, optional) -- 给定路径的坐标系。目前必须转换为数据坐标,因此不能超出轴投影的限制。
- set_extent(extents, crs=None)[源代码]#
设置给定坐标系中地图的范围(x 0,x1,y 0,y1)。
如果没有给出crs,则范围的坐标系将被假设为该轴投影的大地测量版本。
- 参数:
extents -- 表示所需范围(x 0,x1,y 0,y1)的浮点数组。
- set_global()[源代码]#
将轴的范围设置为投影的极限。
备注
在某些情况下,投影的合理范围有限,
set_global
该方法实际上并不能使整个地球可见。相反,将使用最合适的范围(例如,英国地形测量局将范围设置为不列颠群岛周围。
- set_xticks(ticks, minor=False, crs=None)[源代码]#
设置x勾选。
- 参数:
ticks -- 表示x刻度的所需位置的浮点数列表。
minor (optional) -- 标志,指示标记是否应该是较小的标记,即较小且未标记(默认为False)。
crs (optional) -- 的实例
CRS
指示所提供的刻度值的坐标系。如果未指定坐标系,则假设这些值位于投影的坐标系中。仅支持从一个矩形坐标系到另一个矩形坐标系的转换(默认为无)。
备注
该界面可能会发生变化,同时添加了支持其他地图投影的功能。
- set_yticks(ticks, minor=False, crs=None)[源代码]#
设置y勾选。
- 参数:
ticks -- 表示y刻度的所需位置的浮点数列表。
minor (optional) -- 标志,指示标记是否应该是较小的标记,即较小且未标记(默认为False)。
crs (optional) -- 的实例
CRS
指示所提供的刻度值的坐标系。如果未指定坐标系,则假设这些值位于投影的坐标系中。仅支持从一个矩形坐标系到另一个矩形坐标系的转换(默认为无)。
备注
该界面可能会发生变化,同时添加了支持其他地图投影的功能。
- stock_img(name='ne_shaded', **kwargs)[源代码]#
将标准图像添加到地图。
目前,图像的唯一(也是默认)选项是自然地球着色浮雕格栅的降采样版本。其他选项(例如,Alpha)将传递给
GeoAxes.imshow()
.
- streamplot(x, y, u, v, **kwargs)[源代码]#
绘制一个矢流的流线。
- 参数:
x -- 包含数据点x位置的数组。
y -- 包含数据点y位置的数组。
u -- u方向上的一个载体数据数组。
v -- v方向上的向量数据数组。
transform (
cartopy.crs.Projection
or Matplotlib transform.) -- 定义向量场的坐标系。
看到
matplotlib.pyplot.streamplot()
有关参数和关键字参数的详细信息,请参见。备注
向东网格和向北网格必须定义为网格。
- tissot(rad_km=500, lons=None, lats=None, n_samples=80, **kwargs)[源代码]#
将天梭的指标添加到轴上。
- 参数:
rad_km -- 要绘制的圆的半径(公里)。
lons -- numpy. nd数组、经度值列表或数组,用于定位每个圆的中心。指定多个维度允许绘制单个点,而1D阵列则生成点网格。
lats -- numpy. ndray、纬度值列表或多元组,位于每个圆的中心。看看lons。
n_samples -- 指定每个圆圆周周围采样的点的数量。
**kwargs
被直通到cartopy.feature.ShapelyFeature
.