python学习之matplotlib学习之散点图

一、散点图

  整体绘制方法,类似折线图,唯一不同使用scatter方法。

#同一个坐标轴里面绘制两个图形方法,添加拟合曲线
import matplotlib.pyplot as plt
from matplotlib import font_manager
my_font = font_manager.FontProperties(fname="C:\WINDOWS\FONTS\SIMHEI.TTF")
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,22,23]
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]
x1 = [i for i in range(1,32)]
x2 = [i for i in range(51,82)]
x_ticks = ["3月{}日".format(i) for i in range(1,32)]
x_ticks1 = ["10月{}日".format(i) for i in range(1,32)]
plt.figure(figsize=(10,5),dpi = 80)
plt.xlabel("潘琰",fontproperties = my_font)
plt.ylabel("中国",fontproperties=my_font)
plt.scatter(x1,y_3,color = "red",label="3月")
plt.scatter(x2,y_10,color = "blue",label ="10月")
plt.plot(x1,y_3,linestyle="--",color = "blue",linewidth = 2,alpha=0.5)
plt.plot(x2,y_10,linestyle = "-",color = "red",linewidth = 2,alpha = 0.8)
plt.title("TES-S10")
x = x1 + x2
x_ticks = ["3月{}日".format(i) for i in x if i < 35 ]
x_ticks += ["10月{}日".format(i-50) for i in x if i > 35]
plt.xticks(x[::5],x_ticks[::5],fontproperties = my_font,rotation =45)
plt.legend(prop = my_font, loc = "best" )

二、绘图区域添加水平线或者竖直线

plt.axhline(y=2,ls = "-",color = "green")
plt.axvline(x=20,ls="--",color = "blue")

 

  

posted @ 2020-10-23 10:56  上虞牧之  阅读(121)  评论(0)    收藏  举报