目录
Plotly简介
Plotly 是一款非常强大好用的数据可视化框架
我们可以从他的官网上找到各种封装好的精美图表
官网地址:
https://plotly.com/python/
例如基础的图表,散点图,折线图等,
|
箱线图,热图等统计图表,
|
甚至还有地图中的散点图和密度图等
|
生物信息领域必备的火山图和曼哈顿图等
|
作为plotly系列的第一篇,我们先来实现如何在地图上制作散点图和密度图
在地图上制作散点图和密度图
1 . 在python中使用pip命令安装
pip install plotly
pip install pandas
pip install numpy
2 .导入包
import pandas as pd
import numpy as np
import plotly.graph_objects as go #plotly地图类的库 graph_objects
3 .读取文件
# 读取数据
data = pd.read_excel("E:/odv.xlsx"
,index_col=0 #使用第一列数据作为索引
)
data = data.head(10)
文件格式如下:
|
4 . 在地图上绘制散点图
# 在地图上画散点图
scatter = go.Scattermapbox(lat=data['Latitude'] #设置纬度
,lon=data['Longitude'] #设置经度
) #使用Scattermapbox函数画散点图
fig = go.Figure(scatter) #将散点图导入画布
fig.update_layout(mapbox_style='stamen-terrain') #将地图设置为画布
#可以使用的免费地图:"open-street-map", "carto-positron", "carto-darkmatter", "stamen-terrain", "stamen-toner" or "stamen-watercolor"
fig.show()
鼠标悬停在散点上会显示出经纬度
5 . 绘制密度图,其属性与绘制散点图相似
Plotly_express 则是对 Plotly 的高级封装,上手容易,
它对 Plotly 的常用绘图函数进行了封装。
#在地图上绘制密度图
import plotly.expess as px
fig = px.density_mapbox(data
, lat='Latitude [degrees North]' #设置纬度
, lon='Longitude [degrees East]' #设置经度
, z='Temperature [℃]' #设置密度
, radius=60
, center=dict(lat=40, lon=118) #设置地图的中心点
, zoom=2 #设置地图的缩放等级0-20
, mapbox_style="stamen-terrain"
, color_continuous_scale='inferno'
) #使用density_mapbox函数绘制密度图
fig.show()
鼠标悬停在散点上会显示出经纬度
关注我微信公众号(生物海洋计算机支线),不定时更新作图,数据处理等tip