folium基础内容介绍

folium基础内容介绍

1. 简介

folium是js上著名的地理信息可视化库leafet.js为Python提供的接口,通过它,我们可以通过在Python端编写代码操纵数据,来调用leaflet的相关功能,基于内建的osm或自行获取的osm资源和地图原件进行地理信息内容的可视化,以及制作优美的可交互地图,是通过不断添加图层元素来定义一个Map对象,最后以几种方式将Map对象展现出来。

​ 而在Map对象的生成形式上,可以在定义所有的图层内容之后,将其保存为html文件在浏览器中独立显示,也可以基于jupyter notebook在一个ipynb文件嵌入对应的交互地图。

2. 创建地图

首先,创建一张指定中心坐标的地图,这里指定中心坐标为保定市。

m = folium.Map(location=[38.85,115.48],
              zoom_start=14)
m.__class__
m

在这里插入图片描述

通过class魔法方法我们可以看到创建的m为folium中的Map类型,接下来直接输出m可以获取初始图表。

folium基础内容介绍_第1张图片

folium.Map()为绘制地图图层的基本函数,其主要参数如下:

  • location: tuplelist类型输入,用于控制初始地图中心点的坐标,格式为(纬度,经度)或[纬度,经度],默认为None
  • zoom_start:表示初始地图的缩放尺寸,数值越大缩放程度越大。
  • width:int型或str型,int型时,传入的是地图宽度的像素值;str型时,传入的是地图宽度的百分比,形式为’xx%’。默认为’100%’
  • height:int型或str型,int型时,传入的是地图高度的像素值;str型时,传入的是地图高度的百分比,形式为’xx%’。默认为’100%’
  • tiles:str型,用于控制绘图调用的地图样式,默认为’OpenStreetMap’,也有一些其他的内建地图样式,如’Stamen Terrain’、’Stamen Toner’、’Mapbox Bright’、’Mapbox Control Room'等;也可以传入’None’来绘制一个没有风格的朴素地图,或传入一个URL来使用其它的自选osm
  • max_zoom:int型,控制地图可以放大程度的上限,默认为18
  • control_scale:bool型,控制是否在地图上添加比例尺,默认为False即不添加
  • no_touch:bool型,控制地图是否禁止接受来自设备的触控事件譬如拖拽等,默认为False,即不禁止。

示例:

  1. 创建width为50%且施加比例尺的地图
m = folium.Map(location=[38.85,115.48],
              zoom_start=14,control_scale=True,width='50%')
m

folium基础内容介绍_第2张图片

地图只有左半边被填充,且在地图左下角添加了比例尺,标记公里与英里的比例。

  1. 更改tiles风格,设置“Stamen Terrain”风格地图
m = folium.Map(location=[38.85,115.48],
              zoom_start=14, 
              tiles='Stamen Terrain')
m

你可能感兴趣的:(python)