2016-04-21 17 views
0

Gibt es eine einfache Möglichkeit, alle Features in einem GeoDataFrame als die gleiche Farbe anstatt der Standardfarbkarte zu plotten?Geopandas Plot alle Funktionen gleiche Farbe

sagen, dass ich die folgende geodataframe von Linienfolgen haben:

>>> import geopandas as gpd 
>>> from shapely.geometry import LineString 
>>> 
>>> gdf=gpd.GeoDataFrame(geometry=[LineString([(1,2),(4,5)]),LineString([(6,3),(7,3)]),LineString([(6,2),(8,9)])]) 
>>> gdf 
       geometry 
0 LINESTRING (1 2, 4 5) 
1 LINESTRING (6 3, 7 3) 
2 LINESTRING (6 2, 8 9) 
>>> 

Wie kann ich gdf.plot() verwenden, aber haben alle drei Linestrings farbigen und schwarz erscheinen?

+0

Sie können das mit dem Farbschlüsselwort angeben: 'gdf.plot (color = 'schwarz')' – joris

+0

Das hat nicht für mich funktioniert. Ich bekomme den gleichen Plot wenn ich 'gdf.plot()' oder 'gdf.plot (color = 'schwarz')' – AJG519

+0

Ah, möglicherweise ist dies in der Entwicklungsversion behoben, aber noch nicht in der neuesten veröffentlichten Version. Wenn du 'pip installierst --upgrade git + git: // github.com/geopandas/geopandas.git', sollte es funktionieren, denke ich – joris

Antwort

2

Da das Setzen einer einzelnen Farbe noch nicht implementiert ist, können Sie einfach Ihre eigene Farbkarte mit nur einer Farbe erstellen.

from matplotlib.colors import ListedColormap  
mycolor = ListedColormap('blue') 

Für Ihr Beispiel würde dies

import geopandas as gpd 
from shapely.geometry import LineString 
from matplotlib.colors import ListedColormap  

mycolor = ListedColormap('blue')   
gdf=gpd.GeoDataFrame(geometry=[LineString([(1,2),(4,5)]),LineString([(6,3),(7,3)]),LineString([(6,2),(8,9)])]) 
gdf.plot(colormap=mycolor) 

Figure Result

Natürlich zu

führen Sie eine andere matplotlib Farbe verwenden können.

Verwandte Themen