Python新一代数据可视化神器:Plotly动画展示

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

以下文章来自于Python技术,作者:派森酱

可视化神器Plotly_Express详解

Plotly是新一代的数据可视化神器,TopQ扩展开源团队,虽然plotly功能强大,却一直没有得到广泛应用,大部分py开发人员,还在使用陈旧的matplotlib,其中最重要的原因,就是plotly的设置过于繁琐。折射率,plotly推出了其简化接口:Plotly Express,简称:px。

Plotly Express是对Plotly.py的高级封装,内置的实用,现代的绘图模板,用户只需调用简单的API函数,即可快速生成漂亮的交互式图表。

Plotly Express内置的图表组合,涵盖了90%常用的绘图需要,Python画图,首推Plotly Express。

封装图表说明

scatter:散点图在散点图中,每行data_frame由2D空间中的符号标记表示;

scatter_3d:三维散点图在3D散点图中,每行data_frame由3D空间中的符号标记表示;

scatter_polar:极坐标散点图在极坐标散点图中,每行data_frame由极坐标中的符号标记表示;

scatter_ternary:三元散点图在三元散点图中,每行data_frame由三元坐标中的符号标记表示;

scatter_mapbox:地图散点图在Mapbox散点图中,每行data_frame都由Mapbox地图上的符号标记表示;

scatter_geo:地理坐标散点图在地理散点图中,每行data_frame都由地图上的符号标记表示;

scatter_matrix:矩阵散点图在散点图矩阵(或SPLOM)中,每行data_frame由多个符号标记表示,在2D散点图的网格的每个单元格中有一个,其将每对尺寸彼此相对相对;

density_contour:密度等值线图(双变量分布)在密度等值线图中,行data_frame被组合在一起,成为轮廓标记,以可视化该值的聚合函数histfunc(例如:计数或总和)的2D分布z ;

density_heatmap:密度热力图(双变量分布)在密度热图中,行data_frame被组合在一起,成为彩色矩形细分,以可视化该值的聚合函数histfunc(例如:计数或总和)的2D分布z;

line:线条图在2D线图中,每行data_frame表示为2D空间中折线标记的顶端;

line_polar:极坐标线条图在极线图中,每行data_frame表示为极坐标中折线标记的顶端;

line_ternary:三元线条图在三元线图中,每行data_frame表示为三元坐标中折线标记的尖端;

line_mapbox:地图线条图在Mapbox线图中,每一行data_frame表示为Mapbox地图上折线标记的顶端;

line_geo:地理坐标线条图在地理线图中,每一行data_frame表示为地图上折线标记的顶端;

parallel_coordinates:平行坐标图在平行坐标图中,每行data_frame由折线标记表示,该行线标记分隔成平行轴,每个平行轴对应一个平行轴的尺寸;

parallel_categories:并行类别图在并行类别(或平行集)图中,每行data_frame与其他共享相同值的行组合,尺寸然后通过平行轴对齐为折线标记,每个平行轴对应一个尺寸;

区域:堆积区域图在堆积区域图中,每行data_frame表示为2D空间中折线标记的尖端。连续折线之间的区域被填充;

bar:条形图在条形图中,每行data_frame表示为矩形标记;

bar_polar:极坐标条形图在极坐标条形图中,每一行都data_frame表示为极坐标中的楔形标记;

小提琴图:小提琴图在小提琴图中,将data_frame每一行分组成一个曲线标记,刹车可视化其的分布;

box:箱形图在箱形图中,data_frame的每一行被组合在一起成为盒须标记,以显示它们的分布;

strip:长条图在长条图中,每行data_frame表示为类别中的主轴标记; l

直方图:直方图在直方图中,每行data_frame被组合在一起成为矩形标记,以可视化该值的聚合函数histfunc(例如,计数或总和)的1D分布y(或者x,如果orientation是'h'时);

choropleth:等高(值)区域地图在等值区域图中,每行data_frame由地图上的彩色区域标记表示;

呈现动画散点图

绘画散点图的图表是:scatter,详细代码如下:

import plotly.express as px
df = px.data.gapminder()
px.scatter(df, x="gdpPercap", y="lifeExp", animation_frame="year", animation_group="country",
           size="pop", color="continent", hover_name="country",
           log_x=True, size_max=55, range_x=[100,100000], range_y=[25,90])

显示结果为:

 

动画条形图

import plotly.express as px

df = px.data.gapminder()

fig = px.bar(df, x="continent", y="pop", color="continent",
  animation_frame="year", animation_group="country", range_y=[0,4000000000])
fig.show()

显示结果如下:

原文地址:https://www.cnblogs.com/hhh188764/p/14097480.html