1. 使用互動式圖表的基礎
我們先從基礎開始——製作一個基本的互動式圖表。我們來創建一個散點圖,展示你在虛擬花園裡胡蘿蔔的成長情況。沒錯,就連程式設計師也會有當園藝家的夢想!
import plotly.express as px
import pandas as pd
# 簡單的 DataFrame,我們的數據
df = pd.DataFrame({
'天數': [1, 2, 3, 4, 5],
'胡蘿蔔成長': [2, 3, 5, 7, 11]
})
# 創建互動式折線圖
fig = px.line(df, x='天數', y='胡蘿蔔成長', title='一周內胡蘿蔔的成長')
fig.show()
當你運行這段程式碼時,一個新的瀏覽器窗口會打開,你會看到一個超棒的互動式圖表。可以縮放、放大,也可以點擊各個點來查看其值。
現在來加入一些互動的魔力吧!
2. 調整互動功能
Plotly 允許自定義提示框、調色板,並在互動式圖表中加入額外的數據,讓報表更加資訊豐富且視覺上更吸引人。
自定義提示框(Tooltips)
在 Plotly 中,可以往提示框中添加詳細的數據,當鼠標懸停在圖表元素上時可以顯示。
import plotly.express as px
import pandas as pd
# 簡單的 DataFrame,我們的數據
df = pd.DataFrame({
'天數': [1, 2, 3, 4, 5],
'胡蘿蔔成長': [2, 3, 5, 7, 11],
"農藝師計劃": [3, 4, 5, 6, 13]
})
# 創建互動式折線圖
fig = px.line(df, x='天數', y='胡蘿蔔成長', title='一周內胡蘿蔔的成長', hover_data={"農藝師計劃": True})
fig.show()
這裡的 hover_data={"農藝師計劃": True} 將農藝師的計劃數據加入提示框內,讓使用者在懸停時對比實際數據與計劃數據。
自定義色彩方案
Plotly 支援多種色彩方案,可用於提升圖表的視覺效果。
import plotly.express as px
# 圖表數據
data = {
"類別": ["A", "B", "C", "D"],
"數值": [10, 20, 30, 40]
}
fig = px.bar(data, x="類別", y="數值", color="類別", title="按類別劃分的數據")
fig.show()
可以自定義調色板,使報告更加生動且具有資訊性。
縮放功能
Plotly 提供多種互動元素,可以在圖表中整合,比如縮放、平移和註解。例如,你可以輕鬆啟用縮放和調整比例,如下所示:
import plotly.graph_objects as go
# 使用胡蘿蔔數據,添加互動功能
fig = go.Figure(data=go.Scatter(x=df['天數'], y=df['胡蘿蔔成長'], mode='lines+markers'))
# 設置控制項目
fig.update_layout(
title='一周內胡蘿蔔的成長',
xaxis_title='天數',
yaxis_title='胡蘿蔔成長 (厘米)',
hovermode='closest'
)
fig.show()
該圖表允許你點擊此點並提供額外資訊,我們可以自行定義。
3. 互動式圖表的應用範例
互動式圖表非常適合用於可視化大型數據集。例如,假設有一份含有數千行的商店年度銷售數據集。互動元素不僅可以幫助你查看整體情況,還能深入細節,分析特定日期,找到峰值和低谷,改善對數據的理解與決策能力。
我們來創建一個例子,假設我們有年度溫度數據,想將其可視化:
import numpy as np
# 生成溫度數據
np.random.seed(0)
x = np.arange(365)
y = np.random.normal(30, 5, 365) # 平均溫度為 30 度
fig = go.Figure(data=go.Scatter(x=x, y=y, mode='lines', line=dict(color='firebrick')))
fig.update_layout(
title='全年溫度變化',
xaxis_title='天',
yaxis_title='溫度 (°C)'
)
fig.show()
現在你擁有了一個互動式圖表,不僅展示了幾乎每天的溫度變化,還可以放大特定的時期進行詳細研究。
自定義圖表
Plotly 提供自定義選項,幫助你創建視覺上吸引人且實用的圖表。你可以更改顏色、添加提示框、圖例,甚至動畫!對於更複雜的場景,你可以深入閱讀 Plotly 的文檔,了解如何在你的項目中利用這些功能。
你可能認為繪製互動式圖表是一個高手級別的任務,但通過學習 Plotly,你將解鎖數據可視化的新大門。使用這些技能來強化你的分析能力,成為你工作場所的 Excel(或 Python)明星。別忘了多嘗試和探索新方法——偉大的點子往往由此誕生!
GO TO FULL VERSION