為了解決特定問題而進(jìn)行的學(xué)習(xí)是提高效率的最佳途徑。這種方法能夠使我們專注于最相關(guān)的知識(shí)和技能,從而更快地掌握解決問題所需的能力。 (以下練習(xí)題來源于《統(tǒng)計(jì)學(xué)—基于Python》。請(qǐng)?jiān)赒群455547227下載原始數(shù)據(jù)。) 練習(xí)題![]() (1)根據(jù)東部地區(qū)的滿意度數(shù)據(jù),繪制簡(jiǎn)單條形圖、帕累托圖和餅圖。 (2)根據(jù)東部地區(qū)、中部地區(qū)和西部地區(qū)的滿意度數(shù)據(jù),繪制并列條形圖、推疊條形圖和環(huán)形圖。 Python代碼與繪圖# (1)根據(jù)東部地區(qū)的滿意度數(shù)據(jù),繪制簡(jiǎn)單條形圖、帕累托圖和餅圖 import pandas as pd import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['Heiti TC'] plt.rcParams['axes.unicode_minus'] = False df = pd.read_csv('exercise3_1.csv') plt.subplots(1, 3, figsize = (20, 5)) # 設(shè)置子圖和圖形大小 # 圖(a)東部地區(qū)滿意度的簡(jiǎn)單條形圖 plt.subplot(131) plt.barh(y = df['滿意度'], width = df['東部'], alpha = 0.6) # 繪制水平條形圖 plt.xlabel('消費(fèi)者人數(shù)', size = 12) plt.ylabel('滿意度', size = 12) plt.title('(a)東部地區(qū)滿意度的條形圖', size = 15) plt.xlim(0, 150) # 設(shè)置x軸的范圍 # 圖(b)東部地區(qū)滿意度的帕累托圖 # 處理數(shù)據(jù) df_p = df.sort_values(by = '東部', ascending = False) # 按東部地區(qū)消費(fèi)者人數(shù)降序排序數(shù)據(jù)框 p = 100*df_p['東部'].cumsum()/df_p['東部'].sum() # 計(jì)算累計(jì)百分比 df_p['累計(jì)百分比'] = p # 繪制直方圖 ax = plt.subplot(132) ax.bar(df_p['滿意度'], df_p['東部'], color = 'steelblue') # 繪制條形圖 ax.set_ylabel('消費(fèi)者人數(shù)', size = 12) # 設(shè)置y軸標(biāo)簽 ax.set_xlabel('滿意度', size = 12) # 設(shè)置x軸標(biāo)簽 # 繪制帕累托曲線 ax2 = ax.twinx() # 與條形圖共享坐標(biāo)軸 ax2.plot(df_p['滿意度'], df_p['累計(jì)百分比'], color = 'C1', marker = 'D', ms = 7) # 繪制折線圖 ax2.set_ylabel('累計(jì)百分比(%)', size = 12) # 設(shè)置y軸標(biāo)簽 plt.title('(b)東部地區(qū)滿意度的帕累托圖', size = 15) # 圖(c)東部地區(qū)滿意度的3D餅圖 plt.subplot(133) p1 = plt.pie(df['東部'], labels = df['滿意度'], autopct = '%1.2f%%', shadow = True, # 繪制立體帶陰影的餅圖 explode = (0.11, 0, 0, 0, 0)) # 設(shè)置某一塊與中心的距離 plt.title('(c)東部地區(qū)滿意度的3D餅圖', size = 15) ![]() (2)根據(jù)東部地區(qū)、中部地區(qū)和西部地區(qū)的滿意度數(shù)據(jù),繪制并列條形圖、推疊條形圖和環(huán)形圖。
都讀到這里了,不妨關(guān)注、點(diǎn)贊一下吧! |
|