添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
import webbrowser as wb
import folium
from folium.plugins import HeatMap, MiniMap, MarkerCluster
import numpy as np
# 绘制热力图
def draw_heatmap(map):
    data = (
            np.random.normal(size=(100, 3)) *
            np.array([[1, 1, 1]]) +
            np.array([[30, 104, 1]])
    ).tolist()
    HeatMap(data).add_to(map)
# 增加小地图
def draw_minimap(map):
    minimap = MiniMap(toggle_display=True,
                      tile_layer='Stamen Watercolor',
                      position='topleft',
                      width=100,
                      height=100)
    map.add_child(minimap)
# 在地图上绘制无边框圆形,填充颜色
def draw_CircleMarker(loc, radius, map):
    folium.CircleMarker(
        location=loc,
        radius=radius,
        color="cornflowerblue",
        stroke=False,
        fill=True,
        fill_opacity=0.6,
        opacity=1,
        popup="{} 像素".format(radius),
        tooltip=str(loc),
    ).add_to(map)
# 在地图上绘制一个小Info标记物
def draw_icon(map, loc):
    mk = folium.features.Marker(loc)
    pp = folium.Popup(str(loc))
    ic = folium.features.Icon(color="blue")
    mk.add_child(ic)
    mk.add_child(pp)
    map.add_child(mk)
# 在地图上绘制一个圆圈
def draw_Circle(map, loc, radius):
    folium.CircleMarker(
        location=loc,
        radius=radius,
        color="red",
        weight=3,
        fill=False,
        fill_opacity=0.6,
        opacity=1,
    ).add_to(map)
# 绘制可缩放的标记物数字指示
def draw_MarkerCluster(map, loc):
    marker_cluster = MarkerCluster().add_to(map)
    folium.Marker(
        location=loc,
        popup="弹窗消息1",
        icon=folium.Icon(color="green", icon="ok-sign"),
    ).add_to(marker_cluster)
    folium.Marker(
        location=loc,
        popup="弹窗消息2",
        icon=folium.Icon(color="red", icon="remove-sign"),
    ).add_to(marker_cluster)
    folium.Marker(
        location=loc,
        popup="弹窗消息3",
        icon=None,
    ).add_to(marker_cluster)
def draw_line(map, loc1, loc2):
    kw = {"opacity": 1.0, "weight": 6}
    folium.PolyLine(
        smooth_factor=10,
        locations=[loc1, loc2],
        color="red",
        tooltip="连线两个经纬度点",
        **kw,
    ).add_to(map)
def draw_lines(map, coordinates):
    folium.PolyLine(
        smooth_factor=50,
        locations=coordinates,
        color="#FF0000",
        weight=2,
        tooltip="连接多个城市之间的线",
    ).add_to(map)
    folium.PolyLine(
        smooth_factor=50,
        locations=coordinates,
        color="grey",
        tooltip="灰色的线条",
        weight=5,
    ).add_to(map)
if __name__ == '__main__':
    latlngs = [[39.929986, 116.395645],  # 北京中心点经纬度
               [31.249162, 121.487899],  # 上海中心点经纬度
               [23.120049, 113.30765],  # 广州中心点经纬度
               [22.546054, 114.025974],  # 深圳中心点经纬度
               [30.679943, 104.067923]]  # 成都中心点经纬度
    map = folium.Map([30., 104.],  # 地图中心
                     tiles='stamentoner',  # stamentoner,Stamen Watercolor,OpenStreetMap'
                     zoom_start=6)
    draw_heatmap(map)
    draw_minimap(map)
    draw_CircleMarker(loc=latlngs[0], radius=20, map=map)
    draw_MarkerCluster(map, latlngs[1])
    draw_Circle(map, latlngs[2], radius=15)
    draw_icon(map, latlngs[3])
    draw_line(map, latlngs[0], latlngs[4])
    draw_lines(map, latlngs)
    map.save('m.html')
    wb.open('m.html')

代码运行后如同所示:

更多folium示例请查阅  https://nbviewer.jupyter.org/github/python-visualization/folium/tree/master/examples/

python:地理地图folium标记物icon,圆圈,圆形,热力图,经纬度点之间的线绘制import webbrowser as wbimport foliumfrom folium.plugins import HeatMap, MiniMap, MarkerClusterimport numpy as np# 绘制热力图def draw_heatmap(map): data = ( np.random.normal(size=(100, 3)) .
博主最近发现了python中一个好玩的包叫basemap,使用这个包可以绘制地图。值得说一下的是,basemap还没有pip检索,因此不能直接使用pip install basemap,来安装这个包。所以需要自己把下面两个包自行下载,然后在该目录下使用pip安装。 pyproj-1.9.5.1-cp36-cp36m-win_amd64.whl basemap-1.1.0-cp36-cp36m-win_amd64.whl 先上个效果图,可以发现这个工具包还是很强大的,下面介绍下怎么在地图上标注出经纬度的地。 整个画图流程分为两部分,第一部分是绘制一个世界地图,代码如下: from mp
foliumpython的一个用来绘制地图,并在地图上打,画圈,做颜色标记的工具类。简单易学,和pandas可以很好的融合,是居家必备良品。 一 基本功能演示 import folium import webbrowser m=folium.Map(location=[40.009867,116.485994],zoom_start=10) # 绘制地图,确定聚焦 folium.Mar...
学习笔记:python decod()和encode() 初学python爬虫,遇到了网页的编码转换,对其中decode()方法不是说十分的了解,从网上查阅相关的资料后了解到,encode()是对字符串进行转码的方法,decode()是对字符串进行解码的方法。从网上爬取的网页源码大多会设置页面的encoding为utf-8,所以从网页上爬取的网页要进行decode(‘UTF-8’)解码。
使用Folium制作相册地图 folium是JavaScript上著名的交互式地图库leaflet.js为Python提供的接口,通过它,我们可以在Python端调用leaflet的相关功能。 leaflet通过内建的OpenStreetMap或自行获取的osm资源和地图原件来进行地理信息内容的可视化,以及制作优美的可交互地图。其语法格式是通过不断添加图层元素来定义一个Map对象,最后以几种方式将Map对象展现出来。 在定义了所有图层内容之后,folium会生成一个html文件,我们可以在浏览器中打开它,也
control_scale=True) ls = folium.PolyLine(locations=[[38.68, 115.67], [38.85, 115.48], [38.65, 115.37], [38.68, 115.67]], color='red'.
input = open('C:\\Users\\Administrator\\Desktop\\a.txt','r') text=input.read() list = re.split('\n',text) location = [] for element in list: location.append([re.split('\|',element)[3],re.
要在地图标记各个,可以使用Python地图库进行实现。这里推荐使用folium库,它能够生成交互式地图,并支持在地图上添加标记等元素。 下面是一个示例代码,其中包含了如何在地图标记若干个的方法: ```python import folium # 创建地图对象 m = folium.Map(location=[39.9, 116.4], zoom_start=10) # 标记各个 points = [(39.9, 116.4), (39.8, 116.5), (40.0, 116.6)] for p in points: folium.Marker(location=p).add_to(m) # 保存地图 m.save('map.html') 在代码中,首先创建了一个地图对象,设置了地图的中心和缩放级别。然后,定义了需要标记经纬度坐标,使用循环遍历各个,并在地图上添加标记。最后,将地图保存为HTML文件。 这里使用的folium库还支持在标记上添加弹出窗口、自定义标记样式等功能,具体可以参考官方文档。
Elasticsearch报错: received plaintext http traffic on an https channel, closing connection ... avi9111: 我用的也是最新的.8.9.1 Elasticsearch报错: received plaintext http traffic on an https channel, closing connection ... avi9111: 真的是这样的,看半小时教学视频,还不如找下csdn,2秒解决 Windows环境下搭建nginx文件下载服务器 执剑问道: 还是这个简单,一次搭好 Unable to make field private final java.lang.String java.io.File.path accessible: module java.base d 一枚学渣斗学霸: 版本配置问题,gradle插件,jdk也注意一下 Unable to make field private final java.lang.String java.io.File.path accessible: module java.base d hello.kitty: 可以可以,有帮助。要加在org.gradle.jvmargs=-Xmx1536m 同一行后面。