2016-04-21 17 views
0

Есть ли какой-либо простой способ построить все функции в GeoDataFrame как один цвет, а не по умолчанию?Geopandas сюжет все функции одного цвета

Скажем, у меня есть следующий geodataframe в объект LineString:

>>> 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) 
>>> 

Как я могу использовать gdf.plot(), но есть все 3 объект LineString показать цвет черный?

+0

Вы можете указать это с ключевым словом цвета: 'gdf.plot (color = 'black')' – joris

+0

Это не сработало для меня. Я получаю тот же сюжет, если я делаю 'gdf.plot()' или 'gdf.plot (color = 'black')' – AJG519

+0

А, возможно, это исправлено в версии разработки, но еще не в последней выпущенной версии. Если вы делаете 'pip install --upgrade git + git: // github.com/geometandas/geometandas.git', он должен работать, я думаю – joris

ответ

2

Поскольку настройка одного цвета еще не реализована, вы можете просто создать свой собственный цветовой код только с одним цветом.

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

Для примера это приведет к

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

Конечно, вы можете использовать любой другой цвет Matplotlib.