Matplotlib学习笔记(二)

前言:

Python初学者,希望各位大佬看了文章后能指出错误或者给些建议!

如有雷同,纯属巧合!

= =!

环境

linux

python3


Matplotlib条形图

简单条形图

使用bar()方法可以很简单的绘制条形图!

这个方法需要传入的参数有left、height!就像折现图与散点图的x坐标和y坐标!

matplotlib会以left作为条形的中点,height作为条形的高来绘制条形,left与height都可以传入多个值,使用列表或者元组来传入,在传参可以直接bar((1, 2, 3), (1, 2, 3))!


Matplotlib学习笔记(二)_第1张图片

设置width参数可以控制条形图案的宽度,当然也可以设置color参数来设置条形图案的颜色!


Matplotlib学习笔记(二)_第2张图片

也可以传入label参数来为条形图添加图例,别忘了使用legend()方法来显示图例就行了!


Matplotlib学习笔记(二)_第3张图片


Matplotlib添加文字说明

使用text()方法即可添加文字说明,传入参数x坐标与y坐标还有文字说明即可,matplotlib会在坐标点上添加文字说明,text不能传入多个x坐标和y坐标!


Matplotlib学习笔记(二)_第4张图片


测试

添加中文文字说明


Matplotlib学习笔记(二)_第5张图片

发现text方法没有fontpropreties参数与prop参数! = = 


Matplotlib学习笔记(二)_第6张图片

百度一下= =竟然百度不到!


Matplotlib学习笔记(二)_第7张图片

决定从根本解决这个问题!将matplotlib配置成支持中文!

啦啦啦

linux下查找linux系统中的中文字体文件 xxx.ttf

fc-list :lang=zh

找到后(这里我找到的文件是DroidSansFallbackFull.ttf文件)!

将其复制到matplot的ttf文件夹下!


然后打开matplotlib的配置文件!matplotlibrc

将配置文件中的font.family和font.sans-serif配置项前的#去掉!


Matplotlib学习笔记(二)_第8张图片


并在font.sans-serif配置项冒号后面添加字体文件的名称!保存即可完成配置!

接下来就是见证奇迹的时刻了!

当然要先重启ipython3啦!


Matplotlib学习笔记(二)_第9张图片

我他妈又发现一个问题我的坐标轴乱码了= = 

好吧应该是我的字体ttf文件只有中文= =,去windows复制一个!

最后解决办法

百度下载了一个Droid Sans Fallback.ttf字体文件,这个字体文件中英文数据都有!


Matplotlib学习笔记(二)_第10张图片

修改matplotlibrc配置文件!

将字体文件名加到font.sans-serif配置项冒号后面即可!


测试


Matplotlib学习笔记(二)_第11张图片

Matplotlib添加文本注释

使用annotate()方法可以添加文本注释!

传入的参数有注释文本、被注释的坐标(xy)、注释文本坐标(xytext)、注释箭头属性(arrowprops)!

注:箭头属性参数值是一个字典!


注释箭头属性参数值中的facecolor键是用来设置注释箭头颜色的,还有一个shrink键用来设置箭头收缩!

Matplotlib学习笔记(二)_第12张图片

测试

添加一个文本注释,注释文本为"这是一个中文注释",设置注释箭头颜色为蓝色,设置注释箭头收缩值为0.1!


Matplotlib学习笔记(二)_第13张图片


Matplotlib设置轴记号

设置轴记号就是设置x坐标轴和y坐标轴上显示的值!

使用xticks()和yticks()方法就可以很简单的设置x坐标轴与y坐标轴上的轴记号!

这两个方法需要传入两个参数!一个是原来坐标轴上的坐标值, 一个是自定义的坐标值!

可以传入多个值,利用元组或者列表来传入!


Matplotlib学习笔记(二)_第14张图片

很直观的看到原来的坐标轴上的数字变成了自定义的值!






你可能感兴趣的:(Matplotlib学习笔记(二))