import numpy as np import matplotlib.pyplot as plt %matplotlib inline plt.rcParams['font.sans-serif'] = 'Arial Unicode MS' ## 設置中文顯示 plt.rcParams['axes.unicode_minus'] = False data = np.load('./data/國民經濟核算季度數據.npz') name = data['columns']## 提取其中的columns數組,視為數據的標簽 values = data['values']## 提取其中的values數組,數據的存在位置 label = ['第一產業','第二產業','第三產業']## 刻度標簽 plt.figure(figsize=(6,5))## 設置畫布 plt.bar(range(3),values[-1,3:6],width = 0.5)## 繪制散點圖 plt.xlabel('產業')## 添加橫軸標簽 plt.ylabel('生產總值(億元)')## 添加y軸名稱 plt.xticks(range(3),label) plt.title('2017年第一季度各產業國民生產總值直方圖')## 添加圖表標題 plt.savefig('./2017年第一季度各產業國民生產總值直方圖.png') plt.show()
In [20]:
plt.figure(figsize=(6,6))## 將畫布設定為正方形,則繪制的餅圖是正圓 label= ['第一產業','第二產業','第三產業']## 定義餅狀圖的標簽,標簽是列表 explode = [0.01,0.01,0.01]## 設定各項離心n個半徑 plt.pie(values[-1,3:6],explode=explode,labels=label, autopct='%1.f%%')## 繪制餅圖 plt.title('2017年第一季度各產業國民生產總值餅圖') plt.savefig('./2017年第一季度各產業生產總值占比餅圖') plt.show()
In [26]:
label= ['第一產業','第二產業','第三產業']## 定義標簽 gdp = (list(values[:,3]),list(values[:,4]),list(values[:,5])) plt.figure(figsize=(6,4)) plt.boxplot(gdp,notch=True,labels = label, meanline=True) plt.title('2000-2017各產業國民生產總值箱線圖') plt.savefig('./2000-2017各產業國民生產總值箱線圖.png') plt.show()
In [7]:
###############################################################################
####################### 任務實現 #######################
###############################################################################
import numpy as np import matplotlib.pyplot as plt data = np.load('./data/國民經濟核算季度數據.npz') data['columns'] ## 提取其中的columns數組,視為數據的標簽 values = data['values']## 提取其中的values數組,數據的存在位置 plt.rcParams['font.sans-serif'] = 'Arial Unicode MS' ## 設置中文顯示 plt.rcParams['axes.unicode_minus'] = False label1 = ['第一產業','第二產業','第三產業']## 刻度標簽1 label2 = ['農業','工業','建築','批發','交通', '餐飲','金融','房地產','其他']## 刻度標簽2 p = plt.figure(figsize=(12,12)) ## 子圖1 ax1 = p.add_subplot(2,2,1) plt.bar(range(3),values[0,3:6],width = 0.5)## 繪制散點圖 plt.xlabel('產業')## 添加橫軸標簽 plt.ylabel('生產總值(億元)')## 添加y軸名稱 plt.xticks(range(3),label1) plt.title('2000年第一季度國民生產總值產業構成分布直方圖') ## 子圖2 ax2 = p.add_subplot(2,2,2) plt.bar(range(3),values[-1,3:6],width = 0.5)## 繪制散點圖 plt.xlabel('產業')## 添加橫軸標簽 plt.ylabel('生產總值(億元)')## 添加y軸名稱 plt.xticks(range(3),label1) plt.title('2017年第一季度國民生產總值產業構成分布直方圖') ## 子圖3 ax3 = p.add_subplot(2,2,3) plt.bar(range(9),values[0,6:],width = 0.5)## 繪制散點圖 plt.xlabel('行業')## 添加橫軸標簽 plt.ylabel('生產總值(億元)')## 添加y軸名稱 plt.xticks(range(9),label2) plt.title('2000年第一季度國民生產總值行業構成分布直方圖')## 添加圖表標題 ## 子圖4 ax4 = p.add_subplot(2,2,4) plt.bar(range(9),values[-1,6:],width = 0.5)## 繪制散點圖 plt.xlabel('行業')## 添加橫軸標簽 plt.ylabel('生產總值(億元)')## 添加y軸名稱 plt.xticks(range(9),label2) plt.title('2017年第一季度國民生產總值行業構成分布直方圖')## 添加圖表標題 ## 保存並顯示圖形 plt.savefig('./國民生產總值構成分布直方圖.png') plt.show()
In [8]:
label1 = ['第一產業','第二產業','第三產業']## 標簽1 label2 = ['農業','工業','建築','批發','交通', '餐飲','金融','房地產','其他']## 標簽2 explode1 = [0.01,0.01,0.01] explode2 = [0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01] p = plt.figure(figsize=(12,12)) ## 子圖1 ax1 = p.add_subplot(2,2,1) plt.pie(values[0,3:6],explode=explode1,labels=label1, autopct='%1.1f%%')## 繪制散點圖 plt.title('2000年第一季度國民生產總值產業構成分布餅圖') ## 子圖2 ax2 = p.add_subplot(2,2,2) plt.pie(values[-1,3:6],explode=explode1,labels=label1, autopct='%1.1f%%')## 繪制散點圖 plt.title('2017年第一季度國民生產總值產業構成分布餅圖') ## 子圖3 ax3 = p.add_subplot(2,2,3) plt.pie(values[0,6:],explode=explode2,labels=label2, autopct='%1.1f%%')## 繪制散點圖 plt.title('2000年第一季度國民生產總值行業構成分布餅圖')## 添加圖表標題 ## 子圖4 ax4 = p.add_subplot(2,2,4) plt.pie(values[-1,6:],explode=explode2,labels=label2, autopct='%1.1f%%')## 繪制散點圖 plt.title('2017年第一季度國民生產總值行業構成分布餅圖')## 添加圖表標題 ## 保存並顯示圖形 plt.savefig('./國民生產總值構成分布餅圖.png') plt.show()
In [9]:
label1 = ['第一產業','第二產業','第三產業']## 標簽1 label2 = ['農業','工業','建築','批發','交通', '餐飲','金融','房地產','其他']## 標簽2 explode1 = [0.01,0.01,0.01] explode2 = [0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01,0.01] p = plt.figure(figsize=(12,12)) ## 子圖1 ax1 = p.add_subplot(2,2,1) plt.pie(values[0,3:6],explode=explode1,labels=label1, autopct='%1.1f%%')## 繪制散點圖 plt.title('2000年第一季度國民生產總值產業構成分布餅圖') ## 子圖2 ax2 = p.add_subplot(2,2,2) plt.pie(values[-1,3:6],explode=explode1,labels=label1, autopct='%1.1f%%')## 繪制散點圖 plt.title('2017年第一季度國民生產總值產業構成分布餅圖') ## 子圖3 ax3 = p.add_subplot(2,2,3) plt.pie(values[0,6:],explode=explode2,labels=label2, autopct='%1.1f%%')## 繪制散點圖 plt.title('2000年第一季度國民生產總值行業構成分布餅圖')## 添加圖表標題 ## 子圖4 ax4 = p.add_subplot(2,2,4) plt.pie(values[-1,6:],explode=explode2,labels=label2, autopct='%1.1f%%')## 繪制散點圖 plt.title('2017年第一季度國民生產總值行業構成分布餅圖')## 添加圖表標題 ## 保存並顯示圖形 plt.savefig('./國民生產總值構成分布餅圖.png') plt.show()
In [28]:
import os os.getcwd()
Out[28]:
