2016-10-02 4 views
1

Ich zeichne eine Karte mit Legenden mit der GeoPandas-Plotfunktion. Wenn ich plane, erscheinen meine Legenden in der oberen rechten Ecke der Figur. So sieht es aus: enter image description hereLegende aus GeoPandas-Plot verschieben

Ich wollte die Legenden in den unteren Teil des Diagramms verschieben. Ich würde normalerweise hätte so etwas wie dies für ein normales matplotlib Grundstück getan:

fig, ax = plt.subplots(1, figsize=(4.5,10)) 
lima_bank_num.plot(ax=ax, column='quant_cuts', cmap='Blues', alpha=1, legend=True) 
ax.legend(loc='lower left') 

jedoch diese Änderung nicht berücksichtigt wird.

Antwort

2

Sie können auf die Legende zugreifen, die auf der ax Instanz mit ax.get_legend() definiert ist. Sie können dann den Speicherort der Legende mit der Methode set_bbox_to_anchor aktualisieren. Dies bietet nicht die gleiche Benutzerfreundlichkeit wie das Schlüsselwort loc beim Erstellen einer Legende von Grund auf, aber gibt die Kontrolle über die Platzierung. Also, für Ihr Beispiel, so etwas wie:

leg = ax.get_legend() 
leg.set_bbox_to_anchor((0., 0., 0.2, 0.2)) 

Ein bisschen documentation of set_bbox_to_anchor, obwohl ich nicht finde es außerordentlich hilfreich.

Verwandte Themen