python学习——matplotlib库——散点图

导入matplotlib相关模块

from matplotlib import pyplot as plt
from matplotlib import font_manager

pyplot:是绘制图像的模块,可以绘制散点图,条形图,折线图,直方图等各类图表。
font_manager:让图表可以显示中文,否者图表只会正常显示数字和英文。

设置散点图的显示内容和效果

各种图表的显示内容和效果,都是有一个不变的框架,针对不同图表的相关特殊内容相对比较少,所以绘制图表的学习还是相对容易的。

设置显示中文字体

my_font = font_manager.FontProperties(fname="c://windows//fonts//msyh.ttc")

之后需要设置相关字体的时候,在参数括号中,写入my_font。
也可以查找相关资料修改显示字体,这只是其中一种。

散点图数据说明

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]

x_3 = range(1,32)
x_10 = range(51,82)

数据记录的是3月份和10月份两个月每天的气温变化。
显示效果要求用一个坐标轴,x轴显示两个月的日期,即左边一个月,右边一个月。y轴显示气温的刻度。两个月使用两个颜色显示。

x_3 = range(1,32):即一个列表,从1开始,有31个元素。
x_10 = range(51,82):也是一个列表,从51开始,31个元素。
两个列表中的数字不连续,是想要实现左右两边显示两个月的内容。

设置显示窗口大小和图像像素密度

plt.figure(figsize=(20,8),dpi=80)

figsize=(20,8):是宽高比
dpi=80:是像素密度,越大显示越清晰

绘制散点图的方法——plt.scatter()

plt.scatter(x_3,y_3,label = '3月份')
plt.scatter(x_10,y_10,label = '10月份')

不同的图表对应plt不同方法,但是输入的参数基本都一样。
x_3:输入x轴显示的位置,注意不是显示的刻度,可以理解为规定了x轴间隔多少为一格,x轴对应的字符内容,需要使用另一个方法。
y_3:输入y轴显示的位置,同样理解为规定了y轴间隔多少为一格。
label = ‘3月份’:说明这部分数据是什么数据,只有这儿写label并不会显示,需要在写其他的方法,让label作为图例显示。

显示图例(Label)

plt.legend(prop = my_font)

专门针对plt的绘图函数,写绘制散点图、条形图、直方图的函数参数中写到label,然后在写legend()参数输入字体参数,就会显示图例,并且中文显示。

设置x轴的刻度

_x = list(x_3)+list(x_10)
_xtick_labels = ['3月{}日'.format(i) for i in x_3]
_xtick_labels += ['10月{}日'.format(i-50) for i in x_10]
plt.xticks(_x[::3],_xtick_labels[::3],fontproperties=my_font,rotation = 45)
  • 先把3月份和10月份的合并到一个列表,这时_x中有62个元素,1到31,51到81
  • 分两次,构造某月某日的格式,_xtick_labels中构造完成后有62个元素
  • plt.xticks参数先输入_x,_x中的元素数字,自动去对应x轴的刻度,_x[::3]意思是间隔三个写一个。
  • _x[::3],_xtick_labels[::3]要求这两个的元素个数需要一致,_x[::3]它规定那个位置需要写内容,_xtick_labels[::3]它规定那个位置需要写什么内容。
  • fontproperties=my_font,rotation = 45意思是设置字体,这是字符内容的旋转角度。

添加x轴,y轴的描述信息

plt.xlabel('时间',fontproperties=my_font)
plt.ylabel('温度',fontproperties=my_font)
plt.title('标题',fontproperties=my_font)

设置x轴描述信息,y轴描述信息,图表的标题
并且都需要设置显示字体

让图表显示出来

plt.show()

显示图表最不能缺少的语句

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值