脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - 利用pyecharts绘制地理散点图

利用pyecharts绘制地理散点图

2022-10-25 11:31帅帅de三叔 Python

这篇文章主要介绍了利用pyecharts绘制地理散点图,文章利用上海市7000+办公楼项目,包括项目名称,地理位置,每天的租金,建筑面积和项目所在的商圈,现在要让这些项目按经纬度落位到地图上去,需要的朋友可以参考一下

1.背景

利用上海市7000+办公楼项目,包括项目名称,地理位置,每天的租金,建筑面积和项目所在的商圈,现在要让这些项目按经纬度落位到地图上去,并且按颜色显示租金的高低,之前比较多的事操作ArcGIS软件来做,这一次,准备试试pyecharts模块,直接用python脚本生成。

利用pyecharts绘制地理散点图

2.效果图

效果图大致如下:

利用pyecharts绘制地理散点图

3.完整代码

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import pandas as pd #导入数据分析模块
from pyecharts.charts import Geo #导入地理信息处理模块
from pyecharts import options as opts  #配置
from pyecharts.render import make_snapshot #快照
from snapshot_selenium import snapshot 
from pyecharts.globals import ChartType, SymbolType #全局配置
 
data=pd.read_excel("D:\数有引力\魔都商圈\办公项目.xlsx")  #读取数据
geo_sight_coord={data['项目名称'][i].strip(): [data['经度'][i], data['纬度'][i]] for i in range(len(data))} #构造位置字典数据
data_pair=[(data['项目名称'][i].strip(), data['日租金'][i]) for i in range(len(data))] #构造项目租金数据
 
g=Geo() #地理初始化
g.add_schema(maptype="上海") #限定上海市范围
for key, value in geo_sight_coord.items(): #对地理点循环
    g.add_coordinate(key, value[0], value[1]) #追加点位置
 
g.add("", data_pair, symbol_size=2) #追加项目名称和租金
g.set_series_opts(label_opts=opts.LabelOpts(is_show=False), type='scatter')  #星散点图scatter
 
pieces = [
        {'max': 3, 'label': '<3', 'color': '#00B2EE'},
        {'min': 3, 'max': 6, '3~6': 'love', 'color': '#71C671'},
        {'min': 6, 'max': 10, '6~10': 'always', 'color': '#CD4F39'},
        {'min': 10,  'label': '10+', 'color': '#FF0000'} # 有下限无上限
         ]
 
g.set_global_opts(visualmap_opts=opts.VisualMapOpts(is_piecewise=True, pieces=pieces), title_opts=opts.TitleOpts(title="办公项目分布")) #办公项目分布图
 
make_snapshot(snapshot, g.render("上海市办公项目.html"), "上海市办公项目.png") #渲染成html格式和png格式

4.代码解读

整个流程包括pandas读取数据和处理,geo生成地图和向地图添加数据,渲染地图,这里主要介绍处理数据两点

1,项目名称,项目经度,项目纬度三个字段构成一个字典类型数据

?
1
geo_sight_coord={data['项目名称'][i].strip(): [data['经度'][i], data['纬度'][i]] for i in range(len(data))} 

每个地理数据格式如下:

?
1
{"新桥大厦": 121.472534, 31.246122}

2,项目租金数据通过如下语句构造成元组

?
1
data_pair=[(data['项目名称'][i].strip(), data['日租金'][i]) for i in range(len(data))]

每个项目租金数据格式如下:

?
1
("新桥大厦": 4.3 )

到此这篇关于利用pyecharts绘制地理散点图的文章就介绍到这了,更多相关pyecharts绘制散点图内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/zengbowengood/article/details/104695205

延伸 · 阅读

精彩推荐
  • Python使用Node.js和Socket.IO扩展Django的实时处理功能

    使用Node.js和Socket.IO扩展Django的实时处理功能

    这篇文章主要介绍了使用Node.js和Socket.IO扩展Django的实时处理功能,用异步处理实时功能是相当强大的,文中给出的例子是建立一个实时聊天室,需要的朋友可以...

    脚本之家3392020-06-09
  • Python玩转python爬虫之cookie使用方法

    玩转python爬虫之cookie使用方法

    Cookie用于服务器实现会话,用户登录及相关功能时进行状态管理,这篇文章主要介绍了使用python处理cookie的方法,感兴趣的小伙伴们可以参考一下 ...

    崔庆才3712020-08-12
  • PythonPython中的3D绘图命令总结

    Python中的3D绘图命令总结

    很多情况下,为了能够观察到数据之间的内部的关系,可以使用绘图来更好的显示规律。而Python的matplotlib库中有很多三维图表显示的命令,本文为大家做了...

    车厘子@9032022-10-11
  • Pythonpython抓取需要扫微信登陆页面

    python抓取需要扫微信登陆页面

    这篇文章主要介绍了python抓取需要扫微信登陆页面的相关知识,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下...

    lai_cheng6742021-06-21
  • PythonPycharm 设置默认解释器路径和编码格式的操作

    Pycharm 设置默认解释器路径和编码格式的操作

    这篇文章主要介绍了Pycharm 设置默认解释器路径和编码格式的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    咳咳咳咳咳咳咳444410472021-09-02
  • Python浅谈django三种缓存模式的使用及注意点

    浅谈django三种缓存模式的使用及注意点

    这篇文章主要介绍了浅谈django 三种缓存模式的使用及注意点,详细的介绍了三种缓存模式,非常具有实用价值,需要的朋友可以参考下...

    RGC12482021-04-05
  • Pythonpython 利用zmail库发送邮件

    python 利用zmail库发送邮件

    这篇文章主要介绍了python 如何利用zmail库发送邮件,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下...

    王建4732020-09-12
  • Python利用Python查看微信共同好友功能的实现代码

    利用Python查看微信共同好友功能的实现代码

    这篇文章主要介绍了利用Python查看微信共同好友功能的实现代码,代码简单易懂,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下...

    MHyourh4812021-06-19