在matplotlib中设置图例位置(使用geopandas时)

时间:2018-01-14 14:17:32

标签: matplotlib plot legend geopandas

我尝试了几种不同的方法来改变我的情节传奇的位置,但没有一种方法有效。我想将位置设置为例如左上角或右上角。

我有一个GeoDataFrame(data_proj),里面有多边形。我想只用这些多边形绘制一张地图。

我创建了这样的情节:

   p = data_proj.plot(column = "Level3", linewidth=0.03, legend = True)

我用这些来设置图例的标题等:

  leg = p.get_legend()
  leg.set_title("Land cover")
  leg.get_frame().set_alpha(0)

如何更改图例的位置?

2 个答案:

答案 0 :(得分:2)

在geopandas master(即当前0.3.0版本之后进行的更改)上,legend_kwds方法添加了plot参数。然后可以执行以下操作:

ax = df.plot(column='values', categorical=True, legend=True, legend_kwds={'loc': 2})

答案 1 :(得分:1)

原则上设置图例应该照常工作。 loc参数可用于定义图例的位置。

p = data_proj.plot(column = "Level3", linewidth=0.03)

leg = p.legend(loc="upper right")
leg.set_title("Land cover")
leg.get_frame().set_alpha(0)