Leider ist das Plotten von Geopandas extrem langsam und erfordert viele Ressourcen. Daher möchte ich stattdessen matplotlib zum Plotten verwenden.
Wenn ich das Shapefile mit reinem Fiona öffne und lese, kann ich die Polygone problemlos als Matplotlib-Patches extrahieren. Jetzt möchte ich den Geopandas-Datenrahmen als Ausgangspunkt verwenden, um meine Matplotlib-Polygone abzurufen.
Ich benutze derzeit so etwas wie:
with FI.open(df_map_elements, 'r') as layer:
for element in layer:
key = int(element['id'])
if key not in dict_mapindex_mpl_polygon.keys():
dict_mapindex_mpl_polygon[key]=[]
for tp in element['geometry']['coordinates']:
q = np.array(tp)
polygon = Polygon(q) # matplotlib Polygon NOT Shapely
Zum Zeichnen von Polygonen mit Matplotlib:
from matplotlib import pyplot as plt
from matplotlib.patches import Polygon
from matplotlib.collections import PatchCollection