Python绘制动态图形
- 一、柱形图
- 二、气泡图
- 三、折线图
- 四、小提琴图
- 五、面积图
- 六、漏斗图
- 七、带状图
日常生活中,我们经常需要对多年的数据进行分析。如果对每一年的数据都进行可视化,那么将需要我们重复的采用相同的代码对数据进行可视化。在年份较多的情况下,这无疑增加了我们的工作量,且不能很好地帮助我们发现随着时间的不同数据的变化情况。基于此,本文将众多年份合并在一张图上,用动态变化图形对数据进行可视化。本文主要阐述了几种基本图形的动态可视化。
一、柱形图
import plotly.express as px
from vega_datasets import data
df = data.disasters()
df = df[df.Year > 1990]
fig = px.bar(df,
y="Entity",
x="Deaths",
animation_frame="Year",
orientation='h',
range_x=[0, df.Deaths.max()],
color="Entity" )
fig.update_layout(width=800, height=500,
xaxis_showgrid=False,
yaxis_showgrid=False,
paper_bgcolor='rgba(0,0,0,0)',
plot_bgcolor='rgba(0,0,0,0)',
title_text='Evolution of Natural Disasters',
showlegend=False)
fig.update_xaxes(title_text='Number of Deaths')
fig.update_yaxes(title_text='')
fig.show()
小编还不会保存gif图形,这里将就看一下啦!
二、气泡图
import plotly.express as px
df = px.data.gapminder()
fig = px.scatter(df, x="gdpPercap", y="lifeExp", animation_frame="year", size="pop",
color="continent", hover_name="country", log_x=True, size_max=55,
range_x=[100, 100000], range_y=[25, 90])
fig.update_layout(width=800,
height=500,
xaxis_showgrid=False,
yaxis_showgrid=False,
paper_bgcolor='rgba(0,0,0,0)',
plot_bgcolor='rgba(0,0,0,0)')
三、折线图
fig = px.line( df, x="gdpPercap", y="lifeExp", line_dash=None, animation_frame='year', color="continent",
hover_name="country",log_x=True, range_x=[100, 100000], range_y=[25, 90])
fig.update_layout(width=800,
height=500,
xaxis_showgrid=False,
yaxis_showgrid=False,
paper_bgcolor='rgba(0,0,0,0)',
plot_bgcolor='rgba(0,0,0,0)')
fig.show()
四、小提琴图
fig = px.violin( df, x="continent", y="pop", animation_frame='year', color="continent")
fig.update_layout(width=800, height=500, xaxis_showgrid=False, yaxis_showgrid=False,
paper_bgcolor='rgba(0,0,0,0)', plot_bgcolor='rgba(0,0,0,0)')
五、面积图
fig = px.area( df, x="continent", y="lifeExp", animation_frame='year', color="continent")
fig.update_layout(width=800, height=500, xaxis_showgrid=False, yaxis_showgrid=False,
paper_bgcolor='rgba(0,0,0,0)', plot_bgcolor='rgba(0,0,0,0)')
六、漏斗图
fig = px.funnel( df, x="continent", y="lifeExp", animation_frame='year', color="continent")
fig.update_layout(width=800, height=500, xaxis_showgrid=False, yaxis_showgrid=False,
paper_bgcolor='rgba(0,0,0,0)', plot_bgcolor='rgba(0,0,0,0)')
七、带状图
fig = px.strip( df, x="continent", y="pop", animation_frame='year', color="continent", stripmode='overlay')
fig.update_layout(width=800, height=500, xaxis_showgrid=False, yaxis_showgrid=False,
paper_bgcolor='rgba(0,0,0,0)', plot_bgcolor='rgba(0,0,0,0)')