LOADING

Plotly Express 快速创建交互式可视化图表

运维2个月前发布 杨帆舵手
14 0 0
广告也精彩
欢迎指数:
参与人数:

在数据分析过程中,数据可视化是一项重要的技能,能够帮助我们快速理解数据的分布、趋势和关系。而 Plotly ExpressPlotly 库的一部分,提供了创建交互式图表的简单而强大的工具。它结合了简单的 API 和高度可定制的功能,使用户能够快速创建交互式、专业的可视化图表。本文将详细介绍如何使用 Plotly Express 快速创建交互式图表,并为每一个步骤提供清晰的代码和解释。

? 什么是 Plotly Express?

Plotly Express 是一个用于快速创建交互式图表的库。它基于 Plotly,允许用户通过非常简单的代码就能绘制出具有交互功能的精美图表,适用于数据探索和展示。它支持多种类型的图表,包括散点图、柱状图、线图、直方图等。

? Plotly Express 的主要优势

  • 简单快捷:使用很少的代码就能生成丰富的交互式图表。
  • 支持多种数据格式:可以直接从 Pandas DataFrame 进行可视化。
  • 高度交互:生成的图表可以实现缩放悬浮显示数据拖拽等交互功能。

    ? 安装和导入 Plotly Express

    在开始之前,首先需要安装 Plotly

    pip install plotly

    解释

  • 使用 pip 安装 Plotly,可以直接在命令行运行上述命令,确保在 Python 环境中可以使用 Plotly Express。
    接下来,我们导入 plotly.express 作为 px,这样可以简化代码书写:

    import plotly.express as px
    import pandas as pd

    解释

  • import plotly.express as px:将 Plotly Express 导入为 px,方便后续使用。
  • import pandas as pd:导入 Pandas,通常我们会从 Pandas 的 DataFrame 中提取数据进行可视化。

    ? 快速创建交互式图表

    1. 创建散点图

    散点图是数据可视化中最常用的图表之一,用于观察变量之间的关系。例如,使用内置的 gapminder 数据集创建一个人口与 GDP 的散点图

    df = px.data.gapminder()
    fig = px.scatter(df,
    x="gdpPercap",
    y="lifeExp",
    color="continent",
    size="pop",
    hover_name="country",
    log_x=True,
    title="GDP 与人均寿命关系",
    labels={"gdpPercap": "人均 GDP", "lifeExp": "预期寿命"})
    fig.show()

    解释

  • df = px.data.gapminder():从 Plotly Express 获取内置的 gapminder 数据集。
  • px.scatter():创建散点图。
  • x="gdpPercap":横坐标是人均 GDP。
  • y="lifeExp":纵坐标是预期寿命。
  • color="continent":不同的洲使用不同的颜色。
  • size="pop":点的大小根据国家的人口变化。
  • hover_name="country":鼠标悬停时显示国家名称。
  • log_x=True:对 x 轴使用对数缩放,以更好地显示 GDP 数据。
  • title="GDP 与人均寿命关系":设置图表的标题。
  • labels:设置轴标签。
    交互功能
  • 图表支持鼠标悬停以查看详细数据、缩放拖拽

    2. 创建柱状图

    柱状图适合展示分类数据之间的对比。以下示例创建了一个显示各洲人口的柱状图。

    df = px.data.gapminder().query("year == 2007")
    fig = px.bar(df,
    x="continent",
    y="pop",
    color="continent",
    title="2007 年各洲人口统计",
    labels={"pop": "人口", "continent": "洲"})
    fig.show()

    解释

  • query("year == 2007"):筛选出 2007 年的数据。
  • px.bar():创建柱状图。
  • x="continent"y="pop":分别表示 x 轴和 y 轴的字段。
  • color="continent":使用不同颜色区分不同洲。
  • title:设置图表标题。

    3. 创建折线图

    折线图可以展示数据随时间的变化趋势。下方代码创建了一个显示加拿大人口变化的折线图。

    canada = df[df["country"] == "Canada"]
    fig = px.line(canada,
    x="year",
    y="pop",
    title="加拿大人口随年份的变化趋势",
    labels={"pop": "人口", "year": "年份"})
    fig.show()

    解释

  • df[df["country"] == "Canada"]:选择 country 字段等于 "Canada" 的数据。
  • px.line():创建折线图。
  • x="year":年份作为横轴。
  • y="pop":人口数量作为纵轴。
  • title:设置图表标题。

    4. 创建直方图

    直方图用于查看数据分布情况。以下代码生成一个 2007 年预期寿命的分布直方图

    fig = px.histogram(df,
    x="lifeExp",
    title="2007 年各国预期寿命分布",
    labels={"lifeExp": "预期寿命"})
    fig.show()

    解释

  • px.histogram():创建直方图。
  • x="lifeExp":显示预期寿命的分布情况。
  • title:设置图表标题。

    ? 地理可视化

    Plotly Express 还可以用来绘制地理图表,例如 世界地图上的数据分布

    fig = px.choropleth(df,
    locations="iso_alpha",
    color="lifeExp",
    hover_name="country",
    color_continuous_scale=px.colors.sequential.Plasma,
    title="2007 年各国预期寿命地理分布")
    fig.show()

    解释

  • px.choropleth():绘制地理分布图。
  • locations="iso_alpha":根据 iso_alpha 字段标识国家。
  • color="lifeExp":用颜色表示预期寿命。
  • hover_name="country":鼠标悬停时显示国家名称。
  • color_continuous_scale:设置颜色的渐变样式。

    ?️ 工作流程总结

    使用 Plotly Express 创建交互式图表的工作流程可以总结为以下几个步骤:

    1. 导入库和数据:引入 plotly.expresspandas,并获取或导入数据。
    2. 选择图表类型:根据数据特点选择合适的图表类型(如散点图、柱状图、折线图等)。
    3. 指定参数:通过 px 的函数提供数据列的映射(如 x 轴、y 轴、颜色等),并设置标题和标签。
    4. 显示图表:使用 fig.show() 显示生成的交互式图表。

      ? Plotly Express 图表类型脑图

      graph TD
      A[Plotly Express 图表类型] --> B[散点图]
      A --> C[柱状图]
      A --> D[折线图]
      A --> E[直方图]
      A --> F[地理分布图]
      B --> G[展示数据关系]
      C --> H[分类数据对比]
      D --> I[时间序列变化]
      E --> J[数据分布]
      F --> K[全球数据展示]

      ? 总结

      Plotly Express 提供了创建交互式数据可视化图表的快捷方法。它通过简单的语法和丰富的功能,使得数据科学家和开发人员能够快速生成高质量的图表,并在其中与数据进行交互。无论是用来探索数据还是创建交互式报表,Plotly Express 都能大大提高工作效率。

      Plotly Express 的优点:

  • 简单而强大:通过少量代码生成功能丰富的图表。
  • 支持多种图表类型:包括散点图、柱状图、折线图、直方图和地理图等。
  • 高度交互性:每个图表支持缩放悬浮显示详细信息等操作。
    在数据可视化中,选择合适的工具可以极大地简化工作流程。对于想要快速生成交互式图表的人来说,Plotly Express 是一个不容错过的选择。

此站内容质量评分请点击星号为它评分!

您的每一个评价对我们都很重要

很抱歉,这篇文章对您没有用!

让我们改善这篇文章!

告诉我们我们如何改善这篇文章?

© 版权声明
广告也精彩

相关文章

广告也精彩

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...