Plotly是一个功能强大的交互式可视化库,支持Python等多种编程语言。它不仅提供了丰富的图表类型,还具备高度的可定制性和交互性,适用于数据探索和展示。
# 安装Plotly pip install plotly
Plotly的核心功能之一是创建交互式图表。通过简单的代码,用户可以在浏览器中实现动态交互,例如缩放、拖拽和悬停提示。
import plotly.express as px df = px.data.iris() fig = px.scatter(df, x="sepal_length", y="sepal_width", color="species") fig.show()
Plotly支持动态更新图表,非常适合实时数据分析和监控场景。通过回调机制,开发者可以实现图表的实时更新。
import plotly.graph_objects as go import numpy as np import time x = np.random.rand(100) y = np.random.rand(100) fig = go.Figure(go.Scatter(x=x, y=y)) fig.show() for i in range(10): x = np.random.rand(100) y = np.random.rand(100) fig.data[0].x = x fig.data[0].y = y fig.update_layout() time.sleep(1)
Plotly支持多种3D图表类型,如散点图、柱状图和曲面图,能够帮助用户更直观地展示多维数据。
import plotly.graph_objects as go x = [0, 1, 2, 3, 4] y = [0, 1, 2, 3, 4] z = [[0, 1, 2, 3, 4], [1, 2, 3, 4, 1], [2, 3, 4, 1, 2], [3, 4, 1, 2, 3], [4, 1, 2, 3, 4]] fig = go.Figure(go.Surface(x=x, y=y, z=z)) fig.show()
Plotly内置了地图功能,支持地理数据的可视化,如区域填色、点分布和路径绘制。
import plotly.express as px df = px.data.gapminder() fig = px.choropleth(df, locations="iso_alpha", color="gdpPercapita", hover_name="country", animation_frame="year", projection="natural") fig.show()
通过Plotly的交互功能,用户可以实现数据的动态筛选和展示,提升数据探索的效率。
import plotly.express as px df = px.data.iris() fig = px.scatter(df, x="sepal_length", y="sepal_width", color="species") fig.add_trace(go.Scatter( x=[0, 1], y=[0, 1], mode='lines', line=dict(color='red') )) fig.show()
Plotly支持多种高级图表类型,并允许用户根据需求自定义图表样式和布局。
import plotly.graph_objects as go fig = go.Figure() fig.add_trace(go.Bar(x=[1, 2, 3], y=[10, 20, 30])) fig.add_trace(go.Scatter(x=[1, 2, 3], y=[15, 18, 25])) fig.update_layout(bars_width=0.5, xaxis_title='X轴', yaxis_title='Y轴') fig.show()
Plotly可以与其他工具和框架集成,如Django、Flask和Streamlit,支持大规模数据的可视化展示。
如果您对Plotly感兴趣,可以申请试用我们的相关工具:申请试用,体验更多功能。
import streamlit as st import plotly.express as px st.title("Plotly in Streamlit") df = px.data.iris() fig = px.scatter(df, x="sepal_length", y="sepal_width", color="species") st.plotly_chart(fig)