2022.03.20

课时110绘制散点图

 

 

 由于老师是直接复制黏贴数据的,但是我没有办法,为了偷懒,我就直接采用了random函数自动生成温度。

from matplotlib import pyplot as  plt
from matplotlib import font_manager
import random

y_3=[random.randint(1,50) for i in range(30)]
y_10=[random.randint(1,50) for u in range(30)]

x_3=range(1,31)
x_10=range(51,81)

#设置图形大小
plt.figure(figsize=(28,8),dpi=80)
#使用scatter方法绘制散点图,和之前绘制折线图的唯一区别。
plt.scatter(x_3,y_3,label="3月份")
plt.scatter(x_10,y_10,label="10月份")

#调整x轴的刻度
my_font=font_manager.FontProperties(fname="C:\Windows\Fonts\simsun.ttc")
_x=list(x_3)+list(x_10)
_xtick_labels=["3月{}日".format(i) for i in x_3]
_xtick_labels+=["10月{}日".format(i) for i in x_3]
plt.xticks(_x[::3],_xtick_labels[::3],rotation=90,fontproperties=my_font)

#添加描述信息
plt.xlabel("时间",fontproperties=my_font)
plt.ylabel("温度",fontproperties=my_font)
#添加图例
plt.legend(loc="upper left",prop=my_font)

plt.show()

课时12 绘制多次图形和不同图形的差异介绍

 

 其他步骤基本与前面相同,但可以通过grid()函数来绘制网格,让数据更清晰。

网格的刻度与x轴,y轴的刻度有关,如果想要调整网格的密度,就可以从x,y轴的刻度下手。

比如,调整y轴的显示刻度。

 那么,相应地,网格就会改变。

 同时,还可以改变网格的透明度。利用grid()函数里面的alpha参数。

 网格的透明度就会改变。

 

 

我们自己看知道,蓝线是自己,黄线是同桌,但是别人看不知道。

所以应该添加标签,表明线的颜色对应的人。

为此,需要在plot()函数里面,调用“label”参数。

并且,改参数,需要使用legend()函数显示。

同时,为了显示中文,需要在legend()里面传入prop参数。 

 

另外,标签位置也是可以更改的,需要调用legend函数的loc参数。

 

线的颜色也可以通过color参数改变。

而线的虚实,可以通过linestyle来改变。

 

 

至于线条的粗细,可以通过linewidth来调整。 

 

 

 

 

 

 

 

课时13绘制条形图

 

 

 

 

因为手里没有电影名字的列表,所以用了shuffle函数来随机取名。 

import random
from matplotlib import pyplot as plt
from matplotlib import font_manager

my_font=font_manager.FontProperties(fname="C:\Windows\Fonts\simsun.ttc")

a="abcdefghijklmn"
b=[i for i in a]
random.shuffle(b)

x=b
y=[random.randint(1,100) for i in range(14)]

#设置图形大小
plt.figure(figsize=(30,15),dpi=80)

plt.xticks(range(len(x)),x,fontproperties=my_font,rotation=15)
plt.bar(range(len(x)),y,width=0.3)

plt.savefig("./t4.png")
plt.show()

 

 那么如何绘制一个横向列表图呢?

横着的条形图,调用函数是barh()。但是直接使用原来的代码会报错。

因为给width这个参数传了2个值。 

源码里面,第二个位置本身设定就是width,所以相当于原来的代码在第二个位置上用y传给了width一个值,而后面又用“width=”来传了一个值。

所以应该把后面改成height

 

即用高低来改变粗细。

 

但这样的话,x轴设定的值还是没变,所以要改变,变成y轴的值,并且取消旋转。

 调整网格。

最后成果。

#绘制横着的条形图
import random
from matplotlib import pyplot as plt
from matplotlib import font_manager

my_font=font_manager.FontProperties(fname="C:\Windows\Fonts\simsun.ttc")

a="abcdefghijklmn"
b=[i for i in a]
random.shuffle(b)

x=b
y=[random.randint(1,100) for i in range(14)]

#设置图形大小
plt.figure(figsize=(30,15),dpi=80)

plt.yticks(range(len(x)),x,fontproperties=my_font)
plt.barh(range(len(x)),y,height=0.3)

plt.grid(alpha=3)

plt.savefig("./t5.png")
plt.show()

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值