folium 地图数据显示

(数据科学学习手札41)folium基础内容介绍
(数据科学学习手札42)folium进阶内容介绍
【可视化】python地图可视化_Folium

基本环境依赖

pip install folium

检测环境是否安装成功

import folium
print(pyecharts.__version__)

我的环境是1.9.0

创建地图对象

import folium
import os
'''创建Map对象'''
m = folium.Map(location=[29.488869,106.571034],
              zoom_start=14)
'''查看m的类型'''
m.__class__

通过这样一个简单的例子,可以了解到,folium.Map()即为folium中绘制地图图层的基本函数,其主要参数如下:

  • location:tuple或list类型输入,用于控制初始地图中心点的坐标,格式为(纬度,经度)或[纬度,经度],默认为None

  • width:int型或str型,int型时,传入的是地图宽度的像素值;str型时,传入的是地图宽度的百分比,形式为’xx%’。默认为’100%’

  • height:控制地图的高度,格式同width

  • tiles:str型,用于控制绘图调用的地图样式,默认为’OpenStreetMap’,也有一些其他的内建地图样式,如’Stamen Terrain’、‘Stamen Toner’、‘Mapbox Bright’、'Mapbox Control Room’等;也可以传入’None’来绘制一个没有风格的朴素地图,或传入一个URL来使用其它的自选osm

  • max_zoom:int型,控制地图可以放大程度的上限,默认为18

  • attr:str型,当在tiles中使用自选URL内的osm时使用,用于给自选osm命名

  • control_scale:bool型,控制是否在地图上添加比例尺,默认为False即不添加

  • no_touch:bool型,控制地图是否禁止接受来自设备的触控事件譬如拖拽等,默认为False,即不禁止

import folium
import os
'''创建Map对象'''
m = folium.Map(location=[29.488869,106.571034],
              zoom_start=15)
'''为m添加标记部件'''
folium.Marker([29.488869,106.571034], popup='<i>Mt. Hood Meadows</i>').add_to(m)
'''显示m'''

我们通过folium.Marker()方法,创建了一个简单的标记小部件,并通过add_to()将定义好的部件施加于先前创建的Map对象m之上,下面我们对folium.Marker()的常用参数进行介绍:

  • location:同folium.Map()中的同名参数,用于确定标记部件的经纬位置
  • popup:str型或folium.Popup()对象输入,用于控制标记部件的具体样式(folium内部自建了许多样式),默认为None,即不显示部件
  • icon:folium.Icon()对象,用于设置popup定义的部件的具体颜色、图标内容等
import folium
'''创建Map对象'''
m = folium.Map(location=[29.488869,106.571034],
              zoom_start=15,
              control_scale=True)
'''为m添加标记部件'''
folium.Circle(
    radius=100,
    location=[29.488869,106.571034],
    popup='The Waterfront',
    color='crimson',
    fill=False,
).add_to(m)
'''显示m'''

在folium中我们使用folium.Circle()来绘制指定圆心和半径的圆圈,其主要参数如下:

  • location:同folium.Map()中的location,用于控制圆圈的圆心坐标

  • radius:int型,用于控制圆圈的半径,单位米,注意,在folium.Circle()中,radius因为半径的单位是米,所以其大小随着我们对地图的缩放程度而进行相应的变化,但在与folium.CircleMarker()方法中的radius参数单位为像素,即其为屏幕上大小固定的一个圆圈,随着地图的缩放,其大小也不会发生变化

  • color:str型,用于控制圆圈的颜色,默认为十六进制颜色’#3388ff’,即一种蓝色

  • fill:bool型,当为True时,圆圈内部将被填充上色彩,默认不填充

  • fill_color:str型,控制圆圈内部填充的色彩,默认与color参数一致

  • fill_opacity:float型,用于控制圆圈内部填充颜色的透明度,从0.到1.之间,默认为0.2

  • popup:str型或folium.Popup()对象,用于控制圆圈的样式,默认为None,即无样式

绘制几何图形

import folium
m = folium.Map(location=[29.488869,106.571034],
              zoom_start=7,
              control_scale=True)
ls = folium.PolyLine(locations=[[30.588869,105.671034],[29.488869,106.571034],[31.888869,104.971034],[30.588869,105.671034]],
                    color='blue')
ls.add_to(m)

folium.PolyLine()的常用参数如下:

  • locations:二级嵌套的list,用于指定需要按顺序连接的坐标点,若要绘制闭合的几何图像,需要在传入列表的首尾传入同样的坐标

  • color:str型,传入十六进制的颜色,用于控制线条的颜色,默认为’#03f’

  • weight:float型,用于控制线条的宽度,默认为5

  • opacity:float型,用于控制线条的透明度,默认为0.5

  • popup:str型或folium.Popup()对象,用于控制线条样式

添加点击触发事件

  • 实现点击地图任意位置获取经纬度信息提示
  '''创建Map对象'''
m = folium.Map(
    location=[29.488869,106.571034],
    tiles='Stamen Terrain',
    zoom_start=13
'''为地图对象添加点击显示经纬度的子功能'''
m.add_child(folium.LatLngPopup())
  • 实现点击地图任意位置产生一个新的图标
m = folium.Map(
    location=[29.488869,106.571034],
    tiles='Stamen Terrain',
    zoom_start=13
m.add_child(folium.ClickForMarker())

热力图绘制

import folium import numpy as np from folium.plugins import HeatMap data = (np.random.normal(size=(100, 3)) * np.array([[1, 1, 1]]) + np.array([[48, 5, 1]])).tolist() m = folium.Map([48., 5.], tiles='stamentoner', zoom_start=6) HeatMap(data).add_to(m)

地图html保存

Map.save('xixi.html')
                    folium 地图数据显示内容引用(数据科学学习手札41)folium基础内容介绍(数据科学学习手札42)folium进阶内容介绍【可视化】python地图可视化_Folium环境依赖基本环境依赖pip install folium检测环境是否安装成功import foliumprint(pyecharts.__version__)我的环境是1.9.0创建地图对象import foliumimport os'''创建Map对象'''m = folium.Map(loc
				
文章目录一、简介二、安装方法三、主要功能3.1 各级别地图3.1.1 世界地图3.1.2 国家地图3.1.3 市级地图3.2 地图形式3.3 在地图上标记3.3.1 普通标记3.3.2 点击获取经纬度3.3.3 动态放置标记3.4 热力图绘制3.5 密度地图绘制3.6 自定义地图区域3.6.1 只绘制边界,不添加数据3.6.2 绘制边界,添加数据四、竞品对比与优劣势五、参考资料 想通过 ...
全球国家地图: echarts-countries-pypkg (1.9MB): 世界地图和 213 个国家,包括中国地图 中国省级地图: echarts-china-provinces-pypkg (730KB):23 个省,5 个自治区 中国市级地图: echarts-china-cities-pypkg (3.8MB):370 个中国城市 中国县区级地图: echarts-china-counties-pypkg (4.1MB):2882 个中国县·区 中国区域地图: echarts-china-mi
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 Python地图可视化库很多,Matplotlib库虽然作图很强大,但只能做静态地图。而我今天要讲的是交互式地图库,分别为pyecharts、folium,掌握这两个库,基本可以解决你的地图可视化需求。 pyecharts 首先,必须说说强大的pyecharts库,简单易用又酷炫,几乎可以制作任何图表。pyecharts有v0.5和v1两个版本,两者不兼容,最新的v1版本开始支持链
folium基础内容介绍 1. 简介 ​ folium是js上著名的地理信息可视化库leafet.js为Python提供的接口,通过它,我们可以通过在Python端编写代码操纵数据,来调用leaflet的相关功能,基于内建的osm或自行获取的osm资源和地图原件进行地理信息内容的可视化,以及制作优美的可交互地图,是通过不断添加图层元素来定义一个Map对象,最后以几种方式将Map对象展现出来。 ​ 而在Map对象的生成形式上,可以在定义所有的图层内容之后,将其保存为html文件在浏览器中独立显示,也可以基于j
文章目录一、简言二、处理GeoJSON和TopoJSON数据三、Choropleth分级着色图 ​ 上一篇中我们学习了folium的基础内容,从创建folium地图开始,通过主要参数修饰地图,尝试绘制Marker来标记特定地点等,实际上folium在地理信息可视化过程中重点在于绘制图像的高度可定制化。 二、处理GeoJSON和TopoJSON数据 GeoJSON数据 GeoJSON是语法规则符合JSON文件的,专用于表示地理信息的一种JSON文件,其在JSON语法的基础上,内部又有着一套固定的
这篇文章主要为大家详细介绍了python实现3D地图可视化,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 基于python代码的3D地图可视化,供大家参考,具体内容如下 使用Python地图进行3D可视化。以地图地图,可以在三维空间对轨迹、点进行可视化。 我们使用了多个库: 1.gdal; 主要是用于读取地图信息,这个库在GIS中很常用,使用C++代码...
一、分层绘制 一直说要讲2.0.0版本,但总是想把1.3.2版本拿出来比较一下,这篇文章也不例外。QCustomPlot2.0.0beta版本比1.3.2release版本有一个很大的改进那就是分层绘制,所谓分层绘制就是把一张图分几张图来绘制,最后在把这分开的几张图统一绘制到一张图上,比如一张图A,需要分开成3张图B、C和D来绘制,当图A需要重新绘制时,我们一次判断B、C和D是否需要重新绘制,如果不需要绘制的我们直接把图贴到A上,那就很大的减少了重新绘制的时间,而这部分时间其实是没有必要花费的。 心比天高,仗剑走天涯,保持热爱,奔赴向梦想!低调,谦虚,自律,反思,成长,还算是比较正能量的博主,公益免费传播……内心特别想在AI界做出一些可以推进历史进程影响力的东西(兴趣使然,有点小情怀,也有点使命感呀)…… 06-25
参考文章:https://www.cnblogs.com/feffery/p/9282808.html folium.Map()即为folium中绘制地图图层的基本函数,主要参数为: location:tuple或list类型输入,用于控制初始地图中心点的坐标,格式(纬度,经度)或[纬度,经度],默认为None width:int型或str型,int型时,传入的是地图宽度的像素值;str型时,传入...
Python中读取和显示shp文件需要使用 GIS 库,例如Geopandas和Folium。 Geopandas可以使处理地理数据更加容易,而Folium则是一个基于leaflet.js的交互式地图库。 首先,我们需要安装Geopandas和Folium。可以使用pip命令进行安装,例如: pip install geopandas pip install folium 接下来,我们需要导入必要的库: ```python import geopandas as gpd import folium from folium.plugins import HeatMap 然后,我们可以使用Geopandas读取shp文件: ```python shapefile = gpd.read_file('myshapefile.shp') 接着,我们可以使用Folium数据可视化。使用`folium.Map()`函数初始化一个基本地图。然后,我们可以像下面这样把数据添加到地图上: ```python # 创建Folium地图 map = folium.Map(location=[45.5236, -122.6750], zoom_start=13) # 添加shpfile的地图folium.GeoJson(shapefile).add_to(map) # 显示地图 如果我们想在地图上添加热力图,我们可以使用Folium的`HeatMap()`函数: ```python # 创建Folium地图 map = folium.Map(location=[45.5236, -122.6750], zoom_start=13) # 添加shpfile的地图folium.GeoJson(shapefile).add_to(map) # 创建并添加热力图 HeatMap(data).add_to(map) # 显示地图 这是一个简单的例子,可以根据自己的需求进一步设置和自定义地图