当前位置:   article > 正文

Python-Plotly实现数据可视化的五种动图形式_基于plotly的动态可视化绘图

基于plotly的动态可视化绘图


前言

数据可以帮助我们描述这个世界、阐释自己的想法和展示自己的成果,但如果只有单调乏味的文本和数字,我们却往往能难抓住观众的眼球。而很多时候,一张漂亮的可视化图表就足以胜过千言万语

本文将介绍 5 种基于 Plotly 的可视化方法,你会发现,原来可视化不仅可用直方图和箱形图,还能做得如此动态好看甚至可交互。

那么,Plotly 有哪些好处?Plotly 的整合能力很强:可与 Jupyter Notebook 一起使用,可嵌入网站,并且完整集成了 Dash——一种用于构建仪表盘和分析应用的出色工具。

启动

如果你还没安装 Plotly,只需在你的终端运行以下命令即可完成安装:

pip install plotly

  • 1
  • 2

安装完成后,就开始使用吧!

动画

在研究这个或那个指标的演变时,我们常涉及到时间数据。Plotly 动画工具仅需一行代码就能让人观看数据随时间的变化情况,如下图所示:

图片

代码如下:

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")
# improve aesthetics (size, grids etc.)
fig.update\_layout(width=1000,
                  height=800,
                  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()

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

只要你有一个时间变量来过滤,那么几乎任何图表都可以做成动画。下面是一个制作散点图动画的例子:

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\],

    #   color\_continuous\_scale=px.colors.sequential.Emrld
)
fig.update\_layout(width=1000,
                  height=800,
                  xaxis\_showgrid=False,
                  yaxis\_showgrid=False,
                  paper\_bgcolor='rgba(0,0,0,0)',
                  plot\_bgcolor='rgba(0,0,0,
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/924331
推荐阅读
相关标签
  

闽ICP备14008679号