文章目录
- 数据分析-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()