Plotly 是一个图形库,用于创建交互式的图表,它支持多种编程语言,包括 Python、R、JavaScript 等。Plotly 的特点包括丰富的图表类型、高度的可定制性以及良好的跨平台性。在 Python 中使用 Plotly,通常需要安装 plotly
库和 plotly.express
(Plotly Express,简称 PLX),后者提供了更简单易用的界面来创建图表。
Plotly 的主要特点:
- 交互性:Plotly 图表是交互式的,用户可以悬停查看数据点、缩放、拖动等。
- 多种图表类型:支持线图、散点图、柱状图、箱型图、热力图、3D 图表等多种图表类型。
- 易于使用:通过链式调用(chainable method calls)简化图表的创建过程。
- 自定义:可以自定义图表的几乎每个方面,包括颜色、标签、图例、轴等。
- 跨平台:可以在 Jupyter Notebooks、Web 应用、在线仪表板等多种环境中使用。
Plotly Express 使用方法:
安装:首先需要安装 Plotly 和 Plotly Express:
pip install plotly plotly.express
基本图表创建:
import plotly.express as px # 创建数据 df = px.data.iris() # 创建图表 fig = px.scatter(df, x="sepal_width", y="sepal_length", color="species", size="petal_width", title="Iris Dataset Scatter Plot")
图表展示:
fig.show()
图表保存:
fig.write_html("scatter_plot.html")
自定义图表:可以添加线条、标记、图例、轴标题等:
fig.update_traces(mode='markers+lines', marker=dict(size=12), line=dict(width=2)) fig.update_layout(xaxis_title='Sepal Width', yaxis_title='Sepal Length')
什么时候使用 Plotly:
- 当需要创建交互式图表时。
- 当需要在 Web 应用或仪表板中嵌入图表时。
- 当需要图表能够跨平台展示时。
- 当需要对图表进行高度自定义时。
示例:
下面是一个使用 Plotly Express 创建散点图的简单示例:
import plotly.express as px
# 创建示例数据
df = px.data.iris()
# 创建散点图
fig = px.scatter(df, x="sepal_width", y="sepal_length",
color="species", size="petal_width",
title="Iris Species Scatter Plot")
# 显示图表
fig.show()