![ce88b0999df9e992e852c4196f337433.png](https://i-blog.csdnimg.cn/blog_migrate/ce08575f8b4465903046fe1152749f2a.png)
今天是数据处理专题的第11篇文章,我们继续来介绍matplotlib这个包的使用方法。
在上一篇文章当中我们介绍了matplotlib当中subplot的概念以及用法,今天我们将会来介绍matplotlib绘图中的一些具体的设置,可以让我们画出来的图像更加丰富,表现力也更强。
颜色
我们之前绘制的图像都是蓝色的,这也是matplotlib的默认颜色。我们可以使用color这个参数来设置图像的颜色,比如我们想要画原谅色的图,我们就传入color='green',这样我们得到的图像就是绿色了。
![aaa96f3a68a4a8d8f3b66b1d6d2878b1.png](https://i-blog.csdnimg.cn/blog_migrate/85ffa735215afd00b1ee9ce2e2e808a6.png)
由于绿色是很常见的颜色(大雾),所以我们没必要输入完整的green单词,使用g作为缩写就可以了。除了绿色之外,其他常用的颜色也一样,比如红色可以就写成r,蓝色写成b,黄色写成y等等。
相对来说这些常用颜色还是比较好记的,如果记不住也没有关系,我们可以在jupyter当中通过plt.plot?这个命令来查阅相关的文档。把文档拉到最后,我们可以看到关于颜色设置的定义:
![4c34c4eafdc138bf3a580541c96c87ef.png](https://i-blog.csdnimg.cn/blog_migrate/f7c8e7d2044fa671c670f62b7ec311aa.png)
这里有两个颜色看起来不太常用,一个是cyan是青色,另外一个是magenta是品红。说明老外对颜色的喜好和审美和我们国人还是有些差距的。
除了使用单词之外,我们还可以使用16进制来表示颜色。比如#CECECE,表示一种淡淡的灰色。到底有多灰呢?我们画出来就知道了。
![55595634790106a821365597f255ec76.png](https://i-blog.csdnimg.cn/blog_migrate/f4886fd69fcc97b7fbbd420a0a426e7e.png)
16进制表示颜色是一种常见的方法,我们知道光的三原色是红绿蓝,也就是RGB。在计算机领域常用0-255这256个数字来表示某一个原色的强弱。通过三原色的不同组合,我们可以组合出所有的颜色。一共三种原色,那么自然也就需要三个数字来表示,由于255以内的数字写成16进制只有两位,所以我们可以用6位16进制的数字来代表颜色。这也是计算机领域非常常见的颜色表示方法,像是前端CSS调色也是一样的道理。
标记
下面要介绍的是标记,标记的目的是用来凸显数据。plot默认画出来的是一条光滑的曲线,虽然它其实也是将若干个数据点连起来画成的。光滑的曲线有一个问题就是我们看不出来我们的样本究竟是什么,我们只看得到图像,不知道原始数据。
举个例子,我们用随机数据画一个折线图:
![4844d25e8d829721985bdac9f66e4b15.png](https://i-blog.csdnimg.cn/blog_migrate/78c8dca6a44b8266307ef751374555ac.png)
我们固然知道这个图是由数据点连起来得到的,但是我们能准确得找到所有的数据点吗?明显还是比较困难的,因为我们不能判断每一段看起来比值的线段之间存不存在数据点。
针对这个问题,我们可以使用标记,也就是在图上把每个点都标出来。最常见的标记就是圆点,我们让每一个样本变成一个圆点,这样就很直观了。我们可以通过marker这个参数实现这一点,比如如果要画圆点的话,我们传入marker='o'即可。
![009d4288b946c043d8ae9434d303c064.png](https://i-blog.csdnimg.cn/blog_migrate/1806c68bbd2d771021f6d16294ebdf0c.png)
除了圆点之外,还有很多其他的方式,我们同样可以查看plot的文档获得细节。
![0bd72a4165a14a444e47ae056122c8e6.png](https://i-blog.csdnimg.cn/blog_migrate/ad99607a14a35e70a86fef8f865394fe.png)
线条
最后一个可以定制化的内容是线条,我们可以修改plot画出来的线条种类。默认的当然是实线,既然有实线,那么肯定也就有虚线。虚线有两种一种是点虚线一种是全虚线。英文叫做dashed line 和dash-dot line。
线条通过参数linestyle来设置,我们先来看看全虚线,两个短线表示全虚线。如果是一根短线表示实线,也就是默认的style。
![a1893d2ae7077dbee1dfe736a5764217.png](https://i-blog.csdnimg.cn/blog_migrate/72628545d28447b02eaa524ac872a434.png)
除了虚线图之外还有点线图和点状图,这两者顾名思义,大家应该不难猜出来。
![e58ee76d5265f9cb9214240e31cef7ce.png](https://i-blog.csdnimg.cn/blog_migrate/26e18f91b2b863d7f56f23fa3b6879fc.jpeg)
三合一
我们回顾一下我们刚才介绍的,一共有三种特性,分别是标记、线条以及颜色。我们需要传入三个参数来控制它们,怎么说呢,从逻辑上来说这毫无问题。但操作起来还是有点麻烦,所以matplotlib的作者提供了一个三合一的方法,我们可以直接传入一个参数把颜色、线条以及标记一起定义了。
怎么使用呢,我们可以在末尾传入一个字符串,用这一个字符串涵盖刚才介绍的三种参数。我们来看一个例子:
![cde67dfe290847449e3d13758b13b73d.png](https://i-blog.csdnimg.cn/blog_migrate/29c891e6fed6c831169790c9f30ae412.jpeg)
我们很容易看出来这张图是一张绿色的,点状标记的虚线图。我们传入的字符串是'og--',很明显,o代表的是标记,g代表的是颜色green,--代表的是虚线。我们把这三个参数融合在了一个字符串当中。我们交换它们的顺序,写成go--也是一样OK的。如果你不需要设置标记以及线条,也可以去掉一个,同样可以运行。
但是这里要注意,这里的颜色只能使用缩写,不支持其他的写法。说白了这种方法只是用来书写方便的,如果要追求实用性还是应该使用参数来设置。
我是承志,衷心祝愿大家每天都有所收获。如果还喜欢今天的内容的话,请不要吝啬你的三连支持,它对我很重要。(点赞、转发、转发)
- END -
原文链接,求个关注:
https://mp.weixin.qq.com/s?__biz=MzUyMTM5OTM2NA==&mid=2247487367&idx=1&sn=0de2f5ed6ce5a669996f71bdeddb761c&chksm=f9daf2accead7bbab17d2419de67123120937e39da12c0c0d5ba2e25e54d26e903e6179c22c4&token=1375939036&lang=zh_CN#rdmp.weixin.qq.com