python画图——matplotlib.plot 学习
2017-02-17 17:34
351 查看
之前把《利用Python进行数据分析》撸了一遍,其中就有一章专门说数据可视化的,结果这两天做数据挖掘算法实现想用Python画个图,发现脑袋空空如也。所以今天又专门找个时间把Python数据可视化再撸一遍,不过这次就要做个笔记了,下次老子看笔记,不啃书了!
安装方法就跟一般的模块安装方法相同,使用的方法就是把
改为
还有一个轻量服务器进程,启动方式是:
或者是
这时候就会弹出个网页,接下来你就能在网页上进行交互操作了。这个进程的有点就在于你能把你的操作存档,下次可以继续进行未完成的工作,就像是虚拟机一样,存档后下次开机就会直接读取上次的信息,你就可以接着上次的页面继续工作了(还有一个作用就是能把你的存档文件发给你的同事,这样他就能直接看到你的整个操作过程)
模块:plot,这个就是我们一直用的画图模块,我们用的figure对象和subplot方法都在这里面
创建图表的方法有三种:
首先引入包
直接plot方法 这个plot就是这个plt下面的一个方法,它可以直接接受一组x和y的点画图,就像你在学函数一样,有了x有了y直接就可以整个函数图像出来
将plt当做一个画布对象,直接画图;
会有一个figure出现,如果没有结束这个figure,是不能进行下一个动作;
可以将多个动作画在同一个画布上;
建立对象figure
创建一个新的fig对象,当做一个画布;
add_subplot添加子图,再进一步设置图画;
可以一个画布上出现多个图
直接用subplot方法
利用subplot方法同事创建一个figure新对象和axes数组 对数组的元素操作即对每幅图操作 可以很方便的操作每幅图(推荐)
对比上面三种方法可以知道:第一种方法就是画图的方法;第二种方法是先建立figure对象,再利用add_subplot的方法建立几个子图再用第一种方法画图;第三种方法最为直接和方便,直接里用plt.subplots的方法建立子图并返回figure对象和子图的数组。
如果是画一个图表练习练习的话那就用第一种方法,简单直接粗暴,如果是要一次建好几个图表那就用第三种方法,还可以索引出你想用的那个图表
设立坐标轴
set_xlim 设立坐标轴的最大值和最小值
set_xticks 设立坐标轴上的间隔区间
set_xticklabels 设立坐标轴上的间隔名称
set_xlabel 设立坐标轴的名称
设立注释
text 设立文本注释(可以将注释内容定位在(x,y)坐标上)
arrow 设立箭头注释
annotate 设立注释内容
设立图例
在书中说有两种设立图例的方法,但我就实验出来一种
这样就把图和图例都弄出来了,但是图例还没有显示出来,接下来就是显示图例
loc=’best’可以将图例放在最合适的位置,你也可以设置为‘right’‘center’等
这是在学习的时候使用的图,仅供参考
一.模块简介
包:matplotlib,这是一个用于创建出版质量的桌面绘图包,所以你看这个图很有看老板数学教科书中的插图的意味,如果要使这个包作用完全,最好安装一个GUI工具包:ipython。安装方法就跟一般的模块安装方法相同,使用的方法就是把
>>>Python
改为
>>>ipython
还有一个轻量服务器进程,启动方式是:
>>>ipython notebook
或者是
jupyter notebook
这时候就会弹出个网页,接下来你就能在网页上进行交互操作了。这个进程的有点就在于你能把你的操作存档,下次可以继续进行未完成的工作,就像是虚拟机一样,存档后下次开机就会直接读取上次的信息,你就可以接着上次的页面继续工作了(还有一个作用就是能把你的存档文件发给你的同事,这样他就能直接看到你的整个操作过程)
模块:plot,这个就是我们一直用的画图模块,我们用的figure对象和subplot方法都在这里面
二.创建图表
创建图表的第一步是创建一个画布,然后再建图表。一个画布可以存在多个图表。创建图表的方法有三种:
首先引入包
import matplotlib.pyplot as plt form numpy.random import randn
直接plot方法 这个plot就是这个plt下面的一个方法,它可以直接接受一组x和y的点画图,就像你在学函数一样,有了x有了y直接就可以整个函数图像出来
plt.plot(x,y) plt.show()
将plt当做一个画布对象,直接画图;
会有一个figure出现,如果没有结束这个figure,是不能进行下一个动作;
可以将多个动作画在同一个画布上;
建立对象figure
fig=plt.figure() ax=fig.add_subplot(1,1,1) ax.plot(x,y)||ax.hist(x)#(画一个直方图) fig.show()
创建一个新的fig对象,当做一个画布;
add_subplot添加子图,再进一步设置图画;
可以一个画布上出现多个图
直接用subplot方法
figs,axes=plt.subplots(1,1,**kwargs) axes[i].plot(x,y)||axes[i].hist(x) figs.show()
利用subplot方法同事创建一个figure新对象和axes数组 对数组的元素操作即对每幅图操作 可以很方便的操作每幅图(推荐)
对比上面三种方法可以知道:第一种方法就是画图的方法;第二种方法是先建立figure对象,再利用add_subplot的方法建立几个子图再用第一种方法画图;第三种方法最为直接和方便,直接里用plt.subplots的方法建立子图并返回figure对象和子图的数组。
如果是画一个图表练习练习的话那就用第一种方法,简单直接粗暴,如果是要一次建好几个图表那就用第三种方法,还可以索引出你想用的那个图表
三.给图表添砖加瓦
建立了图表,接下来就是给图表加注释、说明,调整横轴大小区间等主要是通过set_*这个方法来实现的设立坐标轴
set_xlim 设立坐标轴的最大值和最小值
set_xticks 设立坐标轴上的间隔区间
set_xticklabels 设立坐标轴上的间隔名称
set_xlabel 设立坐标轴的名称
设立注释
text 设立文本注释(可以将注释内容定位在(x,y)坐标上)
arrow 设立箭头注释
annotate 设立注释内容
设立图例
在书中说有两种设立图例的方法,但我就实验出来一种
fig=plt.figure() ax=fig.add_subplot(1,1,1) ax.plot(randn(1000).cumsum(),'k--',label='one') ax.plot(randn(1000).cumsum(),'k.',label='two') ax.plot(randn(1000).cumsum(),'k',label='three')
这样就把图和图例都弄出来了,但是图例还没有显示出来,接下来就是显示图例
ax.legend(loc='best')
loc=’best’可以将图例放在最合适的位置,你也可以设置为‘right’‘center’等
这是在学习的时候使用的图,仅供参考
四.后续
这个才是刚刚开始,能画出图,但画出自己想要的图还有点困难,如果用pandans中的DataFrame和Series数据来画图会有更好的方法。相关文章推荐
- python 学习5--matplotlib画图实践
- 用matplotlib来画图-python学习笔记16
- python matplotlib画图产生的Type 3 fonts字体没有嵌入问题
- Python之Matplotlib画图方法
- Python学习-centos7.0下matplotlib安装及问题解决
- Python:2D绘图库matplotlib学习总结
- python3使用matplotlib画图支持中文
- 用 python matplotlib 画图 简单记录
- 机器学习实战python环境搭建以及numpy和matplotlib安装遇到的各种问题(一)
- Python-学习笔记(三)——开发环境搭建(numpy,scipy,matplotlib)
- python的画图模块matplotlib
- python科学计算学习二:matplotlib绘图(1)
- python matplotlib画图细节实现
- 雾山的Python学习笔记---Matplotlib的安装
- Python之Matplotlib画图方法
- python matplotlib画图安装和使用
- python 的 matplotlib画图 画曲线图
- python matplotlib画图
- 读书笔记--python数据可视化--001_matplotlib学习
- Python 3下Matplotlib画图中文显示乱码的解决方法