在數據科學中,數據可視化是一項至關重要的任務,旨在揭示數據背后的模式和洞察,并向觀眾傳達這些信息。然而,在編程語言(如 Python)中創建有洞察力的圖表有時可能會耗時且復雜。本文介紹了一種借助 AI 助手(如 DeepSeek 大模型)來更高效地構建基于代碼的數據可視化方法。通過兩個實際應用場景,我們將為您提供利用 AI 工具創建吸引人的數據可視化的提示和建議。
場景一:零售月度銷售趨勢可視化
假設您是一名零售分析師,想要可視化公司不同產品類別的月度銷售趨勢,以識別季節性模式。您有一個包含過去兩年各類別(如電子產品、服裝和家居用品)月度銷售數據的數據集。如果沒有數據,可以使用以下代碼生成一個可管理的數據集:
import pandas as pd
import numpy as np# 設置隨機種子以確保可重復性
np.random.seed(42)# 示例月度銷售數據集(24個月),添加隨機性
data = {'Month': pd.date_range(start='2022-01-01', periods=24, freq='M'),'Electronics': [5000 + i * 200 + (i % 12) * 150 + np.random.randint(-500, 500) for i in range(24)],'Clothing': [7000 + i * 180 + (i % 12) * 130 + np.random.randint(-400, 400) for i in range(24)],'Home Goods': [4500 + i * 170 + (i % 12) * 100 + np.random.randint(-300, 300) for i in range(24)],
}df = pd.DataFrame(data).melt(id_vars="Month", var_name="Category", value_name="Sales")
用戶提示詞可能會是這樣的內容:
“基于所附的數據集,創建一個基于 Python 的折線圖,展示過去兩年內每個產品類別(電子產品、服裝、家居用品)的每月銷售趨勢。為每個類別使用不同的顏色以便于比較,并添加標題和圖例。”
import matplotlib.pyplot as plt
import numpy as npplt.figure(figsize=(12, 6))
for category in df['Category'].unique():subset = df[df['Category'] == category]plt.plot(subset['Month'], subset['Sales'], label=category)
plt.title("Monthly Sales Trends by Category")
plt.xlabel("Month")
plt.ylabel("Sales ($)")
plt.legend(title="Product Category")
plt.grid(True)
plt.show()
執行后,可視化結果將顯示出來。
場景二:按年齡組可視化患者康復率
現在,假設您是一名健康研究員,已經收集了不同年齡組的康復率數據,并希望創建一個交互式條形圖來可視化和識別各組之間的差異。假設您有數據,并希望 AI 助手幫助您生成用于交互式 Plotly 可視化的必要代碼。Plotly 是一個多語言可視化工具箱,非常適合為報告和儀表板構建交互式可視化。
例如,您有一個包含不同年齡組平均康復率的小數據集:
Age Group,Recovery Rate
20-24,87
25-29,82
30-34,91
35-39,88
40-44,77
45-49,73
50-54,69
55-59,65
60-64,60
65-69,58
70-74,54
75+,50
用戶提示詞可能如下所示:
“我有一個包含不同年齡組詳細康復率數據的 CSV 文件。你能幫我創建一個交互式條形圖嗎?我希望每個條形在懸停時顯示康復率,最高值用不同的顏色表示。請從 CSV 讀取數據,并在圖表中包含標記的軸和標題。”
在這種情況下,盡管用戶沒有明確說明,AI 助手可能會假設需要從外部 CSV 文件加載數據到 Pandas DataFrame 中,然后再進行數據可視化。您可能會得到如下代碼:
import pandas as pd
import plotly.graph_objects as go# 從 CSV 加載數據(如果您更喜歡手動創建數據,請替換這部分)
df = pd.read_csv('recovery_rates.csv')# 創建交互式條形圖
fig = go.Figure(data=[go.Bar(x=df['Age Group'],y=df['Recovery Rate'],marker_color=['blue' if rate < df['Recovery Rate'].max() else 'green' for rate in df['Recovery Rate']],text=df['Recovery Rate'],textposition='auto')]
)# 布局自定義
fig.update_layout(title="Patient Recovery Rates by Age Group",xaxis_title="Age Group",yaxis_title="Recovery Rate (%)",yaxis_range=[0, 100]
)# 顯示交互式圖表
fig.show()
執行后,您將得到一個美觀的交互式圖表。
總結
通過本文的兩個應用場景,我們展示了如何借助 AI 助手高效地創建基于 Python 代碼的交互式和吸引人的數據可視化。這些技巧無疑將加速您的數據科學項目工作流程,將自定義可視化參數的負擔留給 AI 助手。希望這些方法能為您的項目帶來啟發!