火柴人VS编程(Animation Vs. Coding) 解析(五)
前情提要
在之前解析的视频部分中,电脑调出了matplotlib震动Yellow。现在继续进行解析。
前期视频
00:00~01:30 第1期
01:30~02:30 第2期
02:28~03:10 第3期
03:10~04:00 第4期
第5期目录
-
- 前情提要
- 前期视频
- plt.figure()
- plt.errorbar()
- 总结:以上代码
- plt.plot()函数
- plt.title()
-
-
- rotation参数和loc参数
-
- 递归
plt.figure()


是 Matplotlib 中用于创建新图表的函数。返回一个Figure对象。Figure即用于画图的对象,显使用它可以完成一些图表的高级操作。
plt.errorbar()
这个函数可以参考plt.bar()的用法。它不过是画的图不太一样。errorbar函数画的是误差线,跟普通的柱状图不同。
总结:以上代码
先用np.random.randint(0,10,20)生成一个包含0~10数字的,长度为20的数组。
画出误差线图表。
Plt.show()显示。
plt.plot()函数
Yellow正在图表上跳动躲避电脑射来的*val,突然撞到了一条红线。
plt.plot(x,y,fmt,**kwargs)函数用于画线。
[x]参数:可选,x轴数据。默认0~len(y)-1。
y参数:y轴数据。
[fmt]参数:可选,控制标记样式。
以下3条内容来自DeepSeekV3
-
颜色:
'b'蓝色'g'绿色'r'红色'c'青色'm'品红'y'黄色'k'黑色'w'白色
-
线条样式:
'-'实线(默认)'--'虚线'-.'点划线':'点线
-
标记样式:
'.'点标记'o'圆圈's'正方形'D'钻石形'^'上三角形'v'下三角形
该函数还支持color,label,marker,alpha等参数。
plt.title()
电脑发现Yellow跑到了图表顶上,又写了一段代码。

用于给图表添加标题。
这样,Yellow直接迎面撞上:TITLE
rotation参数和loc参数

rotation:用于设置文字的方向
loc:用于设置文字位置(如’right’表示靠右)
递归

电脑又写出了一段程序。
fire函数一看就是用来开火的,下面解释一下这段代码。
n:表示总开火的次数
c:表示当前第几次攻击
print函数内是攻击的内容。
随后fire函数调用了自己,使c加上1,进入下一次攻击,这在程序中被称作递归算法**。
递归必须有跳出条件,否则将会无限循环,如本函数中使用c>n条件使函数return None跳出函数。
这段用循环表示如下:
c=1
while c<=n:
print(' '*(c-1)+'*'*(2*(n-c)+1))
可见对于一些简单的递归算法用循环也不是不行,且比递归还方便,但递归有时是必要的,它是一个简单基础且重要的算法。Lisp语言的循环宏也是用递归实现的。
又及:对Python不熟悉的人可能对字符*数字有点疑惑,在Python中可以通过字符串乘数字的方法表示字符串的重复。
例如
a='Hello!'*3
print(a) # 输出:Hello!Hello!Hello!
攻击效果:
这效果不错,电脑还是聪明的。
以上就是对***Animation Vs Coding***4:00~4:30的解析。
TO BE CONTINUED 未完待续
更多推荐




所有评论(0)