1、fmt传参
参数[fmt] 是一个字符串来定义图的基本属性:fmt='[marker][line][color]'
即标记、线形、颜色三部分组成,(默认为蓝色实线),而且这三部分的顺序是可以自己定义的,具体形式:
fmt = ‘[color][line][marker]’
fmt = ‘[color][marker][line]’
fmt = ‘[line][color][marker]’
接下来我们就来探讨一问题
1.1如果fmt字符串中指定了标记却没有指定线性,会不会绘制连接线?
1.2如果fmt字符串中指定了颜色却没有指定线型,会不会绘制连接线?
- 因为格式字符串
fmt
包含标记设置,不包含线形设置,plot
函数绘图结果不包含直线。 - 所以格式字符串
fmt
包含标记和线形设置,plot
函数绘图结果包含直线。 - 还有设置只关键字参数
marker
,不是设置格式字符串fmt
,plot
函数绘图结果包含直线。
示例图如下:
![](https://img-blog.csdnimg.cn/0550ae53c21641cca1bbd45ab139a7fa.png)
![](https://img-blog.csdnimg.cn/d8b028cbe61c420f8ff617fa3eac8bbf.png)
![](https://img-blog.csdnimg.cn/6e2bacf45d874ebfa89eb15f36343870.png)
2、 **kwargs代替fmt字符串传参的可行性
fmt接收的是每个属性的单个字母缩写,例如:plot(x, y, ‘bo-’) # 蓝色圆点实线。
如果不想用fmt传参,那就要用关键字参数对单个属性赋值。
而所谓的关键词也就是**kwargs:
plot(x,y1,color='blue', marker='v', linestyle=':')
1.1 关键字参数kwargs(Line2D的属性)
kwargs和fmt的区别在于:
- fmt接收的是每个属性的单个字母缩写,例如:plot(x, y, ‘yo-’) # 黄色圆点实线
- 若属性用的是全名则不能用fmt参数来组合赋值,应该用kwargs参数对单个属性赋值