使用一行Python代码创建漂亮的静态地图
项目描述
Mapkick Static
使用一行Python代码创建漂亮的静态地图。不再需要与地图库进行斗争!
:fire: 对于JavaScript地图,请查看 Mapkick.py
安装
运行
pip install mapkick-static
然后按照您的Web框架的说明操作
Mapkick Static 使用 Mapbox 静态图像API。 创建Mapbox账户 以获取访问令牌,并在您的环境中设置 os.environ['MAPBOX_ACCESS_TOKEN']
。
Django
在视图中创建地图
from mapkick.static import StaticMap
def index(request):
map = StaticMap([{'latitude': 37.7829, 'longitude': -122.4190}])
return render(request, 'home/index.html', {'map': map})
并将其添加到模板中
{{ map }}
Flask
在路由中创建地图
from mapkick.static import StaticMap
def index():
map = StaticMap([{'latitude': 37.7829, 'longitude': -122.4190}])
return render_template('home/index.html', map=map)
并将其添加到模板中
{{ map }}
地图
点地图
StaticMap([{'latitude': 37.7829, 'longitude': -122.4190}])
区域地图
StaticAreaMap([{'geometry': {'type': 'Polygon', 'coordinates': ...}}])
数据
数据可以是一个数组
StaticMap([{'latitude': 37.7829, 'longitude': -122.4190}])
点地图
使用 latitude
或 lat
表示纬度,使用 longitude
、lon
或 lng
表示经度
您可以指定每个数据点的颜色
{
'latitude': ...,
'longitude': ...,
'color': '#f84d4d'
}
区域地图
使用 GeoJSON 的 Polygon
或 MultiPolygon
的 geometry
您可以指定每个数据点的颜色
{
'geometry': {'type': 'Polygon', 'coordinates': ...},
'color': '#0090ff'
}
选项
宽度和高度
StaticMap(data, width=800, height=500)
替代文本
StaticMap(data, alt='Map of ...')
标记颜色
StaticMap(data, markers={'color': '#f84d4d'})
地图样式
StaticMap(data, style='mapbox/outdoors-v12')
历史
查看 变更日志
贡献
鼓励每个人帮助改进这个项目。以下是一些您可以提供帮助的方式
开始开发
git clone https://github.com/ankane/mapkick-static.py.git
cd mapkick-static.py
pip install -r requirements.txt
pytest