geopandas.GeoDataFrame.plot#

GeoDataFrame.plot()[来源]#

绘制一个GeoDataFrame。

使用matplotlib生成GeoDataFrame的图表。如果指定了某一列,图表的着色将基于该列中的值。

Parameters:
columnstr, np.array, pd.Series, pd.Index (default None)

要绘制的数据框列的名称,np.array,pd.Series或pd.Index。如果使用np.array,pd.Series或pd.Index,则它们的长度必须与数据框相同。值用于给图表着色。如果也设置了color,则会被忽略。

kind: str

要生成的图的类型。默认是创建一个地图(“geo”)。
其他来自pandas的支持图形类型:

  • ‘line’ : 线图

  • ‘bar’ : 垂直条形图

  • ‘barh’ : 水平条形图

  • ‘hist’ : 直方图

  • ‘box’ : 箱型图

  • ‘kde’ : 核密度估计图

  • ‘density’ : 与‘kde’相同

  • ‘area’ : 面积图

  • ‘pie’ : 饼图

  • ‘scatter’ : 散点图

  • ‘hexbin’ : hexbin 图。

cmapstr (default None)

matplotlib 识别的色彩图名称。

colorstr, np.array, pd.Series (default None)

如果指定,所有对象将被统一着色。

axmatplotlib.pyplot.Artist (default None)

绘制图形的坐标轴

caxmatplotlib.pyplot Artist (default None)

在颜色映射的情况下,绘制图例的坐标轴。

categoricalbool (default False)

如果为假,cmap 将反映被绘制列的数值。对于非数值列,这将被设置为真。

legendbool (default False)

绘制图例。如果没有给定 column,或者给定了 color,则会被忽略。

schemestr (default None)

分级地理信息分类方案的名称(需要 mapclassify)。将使用 mapclassify.MapClassifier 对象来进行支持。支持所有由 mapclassify 提供的方案(例如:‘BoxPlot’,‘EqualInterval’,‘FisherJenks’,‘FisherJenksSampled’,‘HeadTailBreaks’,‘JenksCaspall’,‘JenksCaspallForced’,‘JenksCaspallSampled’,‘MaxP’,‘MaximumBreaks’,‘NaturalBreaks’,‘Quantiles’,‘Percentiles’,‘StdMean’,‘UserDefined’)。可以在 classification_kwds 中传递参数。

kint (default 5)

类别数量(如果方案为None则忽略)

vminNone or float (default None)

cmap的最小值。如果为None,则使用要绘制的列中的最小数据值。

vmaxNone or float (default None)

cmap的最大值。如果为None,则使用要绘制的列中的最大数据值。

markersizestr or float or sequence (default None)

仅适用于框架内的点几何体。 如果是字符串,将使用由markersize指定的框架中的列中的值来设置标记的大小。否则,可以是应用于所有点的值,或与点的数量相同长度的序列。

figsizetuple of integers (default None)

结果 matplotlib.figure.Figure 的大小。如果明确给出了参数 axes,则忽略 figsize。

legend_kwdsdict (default None)

传递给 matplotlib.pyplot.legend()matplotlib.pyplot.colorbar() 的关键字参数。 当指定 scheme 时,接受的额外关键字:

fmtstring

图例中类别的区间边缘的格式规范。例如,想要没有小数位: {"fmt": "{:.0f}"}.

labelslist-like

一个用于覆盖自动生成标签的图例标签列表。需要与类别数量(k)具有相同的元素数量。

intervalboolean (default False)

一个控制mapclassify图例中括号的选项。如果为真,则在图例中显示开/闭区间括号。

categorieslist-like

用于分类绘图的类别有序列表对象。

classification_kwdsdict (default None)

传递给mapclassify的关键字参数

missing_kwdsdict (default None)

关键字参数指定颜色选项(作为 style_kwds),将传递给缺失值的几何图形,除此之外或覆盖其他样式 kwds。 如果为 None,则不绘制缺失值的几何图形。

aspect‘auto’, ‘equal’, None or float (default ‘auto’)

设置坐标轴的比例。如果是‘auto’,地图绘图的默认比例为‘equal’;但是如果数据没有被投影(坐标是经纬度),则默认比例设置为1/cos(df_y * pi/180),其中df_y是GeoDataFrame中间的y坐标(边界框y范围的平均值),这样一个经纬度的正方形在图的中间会呈现为正方形。这意味着使用等距投影。如果为None,ax的比例将不会被改变。它也可以手动设置(浮点数),作为y单位与x单位的比率。

autolimbool (default True)

更新轴的数据限制以包含新的几何图形。

**style_kwdsdict

要传递给实际绘图函数的样式选项,例如 edgecolor, facecolor, linewidth, markersize, alpha

Returns:
axmatplotlib axes instance

示例

>>> import geodatasets
>>> df = geopandas.read_file(geodatasets.get_path("nybb"))
>>> df.head()  
   BoroCode  ...                                           geometry
0         5  ...  MULTIPOLYGON (((970217.022 145643.332, 970227....
1         4  ...  MULTIPOLYGON (((1029606.077 156073.814, 102957...
2         3  ...  MULTIPOLYGON (((1021176.479 151374.797, 102100...
3         1  ...  MULTIPOLYGON (((981219.056 188655.316, 980940....
4         2  ...  MULTIPOLYGON (((1012821.806 229228.265, 101278...
>>> df.plot("BoroName", cmap="Set1")  

有关详细信息,请参阅用户指南页面 映射和绘图工具