用途:Plotly 是 Python 交互式科学可视化库,适合制作带悬停提示、缩放、平移的图表,多面板探索性仪表盘,3D 数据(曲面、scatter3d、mesh、volume),地理/地图可视化(choropleth、scatter_geo),可嵌入网页的 HTML 展示,统计分布比较(小提琴、箱线、带边际的直方图),以及带范围滑块和动画帧的时间序列。若需静态出版级图(期刊投稿)建议用 matplotlib;若需统计语法风格建议用 seaborn。
主要能力:提供两套 API。Plotly Express 为高层、pandas 原生,一行代码出图;Graph Objects 为低层,可完全控制 trace、布局与标注。支持子图与多面板布局(make_subplots)、统计图表(误差棒、分布比较)、交互功能(自定义悬停、动画、按钮、范围滑块)。
使用方式:需安装 plotly、pandas、numpy;静态导出需 kaleido;Web 应用需 dash(可选)。安装命令:pip install plotly kaleido。典型用法:用 px.scatter 等生成图,再用 go 方法定制,最后用 fig.write_html 输出交互 HTML,或用 fig.write_image 输出静态图(需 kaleido)。
适用场景:探索性数据分析仪表盘、带标注的演示/补充材料图、相关性热力图、动画散点、地理 choropleth 等。
限制:write_image 需 kaleido,缺失会报 ValueError;版本不匹配可能输出空白图;HTML 若内嵌完整 Plotly.js 体积可能超 10MB,可用 include_plotlyjs="cdn" 减小;悬停数据需列名与 DataFrame 完全一致;子图 trace 的 row/col 为 1 起始。静态导出建议显式设置宽高,印刷质量用 scale=3。出版图建议用 plotly_white 模板。具体收费、平台与效果资料暂未提供。