python - 如何在 Python 中创建等值线图?
问题描述
如何使用下面的 pandas 数据框创建等值线图?
df.head()
Postal Code Latitude Longitude Average Price
0 M1B 43.806686 -79.194353 $880,124
1 M1C 43.784535 -79.160497 $1,416,183
2 M1E 43.763573 -79.188711 $1,081,779
3 M1G 43.770992 -79.216917 $912,943
4 M1H 43.773136 -79.239476 $929,923
使用这些数据创建地图的最佳方法是什么?
解决方案
python中有几个地图可视化库。作为示例,我将展示plotly和 mapbox 的组合。这需要获取 mapbox 的APIkey。
import pandas as pd
import numpy as np
import io
data = '''
"Postal Code" Latitude Longitude "Average Price"
0 M1B 43.806686 -79.194353 $880,124
1 M1C 43.784535 -79.160497 $1,416,183
2 M1E 43.763573 -79.188711 $1,081,779
3 M1G 43.770992 -79.216917 $912,943
4 M1H 43.773136 -79.239476 $929,923
'''
df = pd.read_csv(io.StringIO(data), delim_whitespace=True)
df['Average Price'] = df['Average Price'].str.replace(',','').str.replace('$','').astype(int)
import plotly.express as px
px.set_mapbox_access_token(open("mapbox_API_key.txt").read())
fig = px.scatter_mapbox(df, lat="Latitude", lon="Longitude", color="Average Price", size="Average Price",
color_continuous_scale=px.colors.cyclical.IceFire, size_max=15, zoom=10)
fig.show()
推荐阅读
- laravel - laravel phpunit - 为什么测试刷新实时数据库
- php - 如何将值从 Node Js 传递给 php 然后返回?
- sql - Azure 数据工厂 V2:以文件名作为变量的事件触发器
- python - python sqllite3按字符串列水平分区
- android - IAP 适用于 Live App Testing,但不适用于 Appstore 版本
- vba - 从网络主机(局域网连接的 PC)获取操作系统信息
- swift - Fontawesome 显示问号而不是图标
- php - 我如何获得要在 wordpress 中显示的 html 响应
- apache-kafka - 使用 Kafka Streams 测试窗口聚合
- haskell - 字符串仅包含 haskell 中的字母表