1. 为什么选择Plotly做数据可视化
第一次接触Plotly是在2018年的一个金融数据分析项目里。当时客户要求报表必须支持动态筛选和钻取,而用Matplotlib做的静态图表完全无法满足需求。在试过Bokeh、Highcharts等方案后,最终被Plotly的交互流畅性和Python API的易用性征服。六年过去了,Plotly现在已经成为我日常数据分析的标配工具。
与传统静态图表库不同,Plotly的核心优势在于:
- 原生交互支持:无需额外配置就支持缩放、平移、悬停查看数据点等操作
- 丰富的图表类型:从基础的折线图到3D曲面图、桑基图等复杂类型全覆盖
- 多语言支持:Python/R/JavaScript等多语言API保持高度一致性
- 输出格式灵活:可生成HTML文件、嵌入网页或直接输出为静态图片
提示:Plotly Express是Plotly的高级封装接口,适合快速绘图;而Graph Objects则提供更精细的控制,建议先掌握Express再过渡到后者。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备与基础图表绘制
2.1 安装与基础配置
推荐使用conda创建专属虚拟环境:
bash复制conda create -n plotly_env python=3.8
conda activate plotly_env
pip install plotly pandas nbformat
在Jupyter Notebook中使用时,需要初始化渲染设置:
python复制import plotly.io as pio
pio.renderers.default = "notebook" # 或"browser"直接打开浏览器
2.2 你的第一个交互图表
用Express模块5行代码生成基础散点图:
python复制import plotly.express as px
df = px.data.iris() # 内置数据集
fig = px.scatter(df, x="sepal_width", y="sepal_length",
color="species", size="petal_length")
fig.show()
