利用pyecharts绘制地理散点图
目录
1.背景2.效果图3.完整代码4.代码解读1.背景
利用上海市7000+办公楼项目,包括项目名称,地理位置,每天的租金,建筑面积和项目所在的商圈,现在要让这些项目按经纬度落位到地图上去,并且按颜色显示租金的高低,之前比较多的事操作ArcGIS软件来做,这一次,准备试试pyecharts模块,直接用python脚本生成。
2.效果图
效果图大致如下:
3.完整代码
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,项目名称,项目经度,项目纬度三个字段构成一个字典类型数据
geo_sight_coord={data["项目名称"][i].strip(): [data["经度"][i], data["纬度"][i]] for i in range(len(data))}
每个地理数据格式如下:
{"新桥大厦": 121.472534, 31.246122}
2,项目租金数据通过如下语句构造成元组
data_pair=[(data["项目名称"][i].strip(), data["日租金"][i]) for i in range(len(data))]
每个项目租金数据格式如下:
("新桥大厦": 4.3 )
到此这篇关于利用pyecharts绘制地理散点图的文章就介绍到这了,更多相关pyecharts绘制散点图内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
X 关闭
X 关闭
- 15G资费不大降!三大运营商谁提供的5G网速最快?中国信通院给出答案
- 2联想拯救者Y70发布最新预告:售价2970元起 迄今最便宜的骁龙8+旗舰
- 3亚马逊开始大规模推广掌纹支付技术 顾客可使用“挥手付”结账
- 4现代和起亚上半年出口20万辆新能源汽车同比增长30.6%
- 5如何让居民5分钟使用到各种设施?沙特“线性城市”来了
- 6AMD实现连续8个季度的增长 季度营收首次突破60亿美元利润更是翻倍
- 7转转集团发布2022年二季度手机行情报告:二手市场“飘香”
- 8充电宝100Wh等于多少毫安?铁路旅客禁止、限制携带和托运物品目录
- 9好消息!京东与腾讯续签三年战略合作协议 加强技术创新与供应链服务
- 10名创优品拟通过香港IPO全球发售4100万股 全球发售所得款项有什么用处?