文章目錄
- 資料分析-matplotlib.散點圖案例處理
- 一、多散點圖
- 二、分區顯示
資料分析-matplotlib.散點圖案例處理
一、多散點圖
已知某地3、10月份的氣溫,繪制散點圖
初設計碼:
from matplotlib import pyplot as plt
from matplotlib import font_manager
#設定字型
my_font=font_manager.FontProperties(fname="C:\Windows\Fonts\msyh.ttc")
#設定坐标
x = range(1,32)
y_3 = [11,17,16,11,12,11,12,6,6,7,8,9,12,15,14,17,18,21,16,17,20,14,15,15,15,19,21,22,22,23,20]
y_10 = [26,26,28,19,21,17,16,19,18,20,20,19,22,23,17,20,21,20,22,15,11,15,5,13,17,10,11,13,12,13,6]
#設定大小
plt.figure(figsize=(20,8),dpi=80)
#繪圖
plt.scatter(x,y_3,label="3月份")
plt.scatter(x,y_10,label="10月份")
#添加圖例
plt.legend(prop=my_font)
#顯示
plt.show()
按照以上代碼我們可以的得到如圖所示,顯然還存在許多問題比如坐标軸的辨別,兩個散點合在一起不夠清晰。
傳回頂部
二、分區顯示
修改後代碼:(具體改動在代碼及注釋中,後面不再過多闡述,注意隻有在設定圖裡時中文添加為
prop=my_font
,其他情況全是
fontproperties=my_font
)
#已知某地3、10月份的氣溫,繪制散點圖
from matplotlib import pyplot as plt
from matplotlib import font_manager
#設定字型
my_font=font_manager.FontProperties(fname="C:\Windows\Fonts\msyh.ttc")
#設定坐标,添加新的x、y軸辨別,分别設定出兩個月份的散點圖
x_3 = range(1,32)
y_3 = [11,17,16,11,12,11,12,6,6,7,8,9,12,15,14,17,18,21,16,17,20,14,15,15,15,19,21,22,22,23,20]
x_10 = range(41,72)
y_10 = [26,26,28,19,21,17,16,19,18,20,20,19,22,23,17,20,21,20,22,15,11,15,5,13,17,10,11,13,12,13,6]
#設定大小
plt.figure(figsize=(20,8),dpi=80)
#繪圖
plt.scatter(x_3,y_3,label="3月份")
plt.scatter(x_10,y_10,label="10月份")
#調整刻度
_x=list(x_3)+list(x_10)
_xtick_labels=["3月{}日".format(i) for i in x_3]
_xtick_labels+=["10月{}日".format(i-40) for i in x_10]
plt.xticks(_x,_xtick_labels,rotation=45,fontproperties=my_font)
plt.yticks(range(0,31))
#添加描述資訊
plt.xlabel("月份",fontproperties=my_font)
plt.ylabel("氣溫°C",fontproperties=my_font)
plt.title("某地3月和10月的氣溫散點圖",fontproperties=my_font)
#添加圖例
plt.legend(prop=my_font)
#繪制網格,并設定透明度
plt.grid(alpha=0.3)
#顯示
plt.show()