用python matplotlib 画图
state-machine environment
object-oriente interface
figure and axes
backend and frontend
user interface bankends
hardcopy backends or non-interactive backends
confugure your backends
renderer : AGG
import matplotlib.pyplot as plt
plt.plot() 可一次画好几个, return al list of lines.
b-, ro, bo, k, r--, bs, g^, g-, go-, o, -, r, r+, rs
- solid line
-- dashed line
-. dash-dot line
: dotted line
. point marker
, pixel marker
o cercle marker
v triangle_down marker
^ triangle_up marker
< triangle_left marker
> triangle_right marker
1 2 3 4 试试什么形状
s square marker
p pentagon marker
* star marker
h H
+ plus marker
D diamond marker
d thin_diamond marker
| vline marker
- hline marker
b blue
g green
r red
c cyan
m magenta
y yellow
k black
w white
linewidth = 2.0,
label = 'line 1'
legend() 会根据你的线的label 生成,如果你设置每个line的label的话
line, = plt.plot(x, y, '-')
line就是这个线对象, 方法有:set_antialiased(False),
plt.setp(lines, color='r', linewidth=2.0) 这是keyword args.
或
plt.setp(lines, 'color', 'r', 'linewidth', 2.0) 这是MATLAB style, string value pairs
关于lines properties, 还有很多。可以用plt.setp(lines) 来看, 看看lw=2 什么意思
plt.axis([x-st, x-end, y-st, y-end]) #这个要放到plt.savefig()的最前面, 要不不起作用。。。
plt.ylabel()
plt.show()
plt.savefig() #如果出现could not open display 的错误,将配置文件matplotlibrc复制到工作目录, 然后将backend改为AGG,服务器中配置文件位于/usr/lib64/python2.6/site-packages/matplotlib/mpl-data/matplotlibrc
gca()返回current axes
gcf() 返回current figure
plt.figure(1) #可以不用写,因为如果你不指定的话,figure(1) 和subplot(1,1,1) 都是默认创建的
参数有figsize = (x,y)
plt.subplot(211) # 当前是figure1的subplot 211
plt.plot(x1, f(x1), x2, 'bo', f(x2), 'k' )
plt.subplot(212) #当前是figure1 的subplot 212
plt.plot(x, f(x), 'r--')
subplot(rows, cols, fignum), 所以一共有rows*cols个图, fignum 指定是第几个
如果想更个性的话,用axes(left, bottom, width, height) 每个值都介于0和1之间。
clf() clear current figure
cla() clear current axes
the mamory required for a figure is not completely realeased until the figure is closed with close()
plt.text() 可以让你在图的任意位置加上文字信息。 plt.xlabel(), plt.ylabel(), plt.title() 在指定位置加文字信息。
just as with lines above, you can customize the propertied by passing keyword arguments into the text functions or using setp()
eg: plt.xlebel('hehe', fontsize=14, color='red')
plt.grid(True) 默认是False
plt.annotate('luanqibazaodezhushi', xy=(2,1), xytext=(3, 1.5), arrowprops=dict(facecolor='black', shrink=0.05),) 加上注释文本
pltylim(-2, -2)
一下是一个做柱状图的例子, 从中我们可以看到,axes对象的方法有:
bar(), 可以设置color='coral', label='1/1'...
legend()将上面有label的提取出来
set_xticks() 设置x-axis的坐标
set_xticklabels()
set_xlabel('hehe', fontsize=30), 可以设置fontsize=30, 对x-axis的说明
set_ylabel(),同set_xlabel, 也可以设置字体大小
set_title(), 也有fontsize设置字体大小
用面向对象的方法更能控制图形,而不是依靠状态环境。
fig = plt.figure(1, figsize=(12,6))
ax = fig.add_subplot(111)
ax.bar(每个bar的起始点,数组代表高度, 每个bar的宽度, *kwargs)
宽度width即可以是一个固定值,即所有的bar都用这个值,也可以是一个数组,不同的bar对应不同的值。
ax.set_xticks(数组) # 坐标, 一般在每个bar的中间部位
ax.set_xticklabels(数组) #坐标上的说明信息, 对这个bar的一个说明
ax.set_xlabel('Country')
ax.set_ylabel('GDP')
ax.set_title('Top 10 GDP Country', bbox={'facecolor':'0.8', 'pad':5})
plt.show()
例:
https://github.com/freemao/call-base-each-snp-site/blob/master/line_plot.py
https://github.com/freemao/call-base-each-snp-site/blob/master/bar_plot.py
by freemao
FAFU
free_mao@qq.com
用python matplotlib 画图的更多相关文章
- python matplotlib画图产生的Type 3 fonts字体没有嵌入问题
ScholarOne's 对python matplotlib画图产生的Type 3 fonts字体不兼容,更改措施: 在程序中添加如下语句 import matplotlib matplotlib. ...
- python matplotlib 画图
import numpy as np import matplotlib.pyplot as plt from pylab import * numpy 常用来组织源数据: 使用 plot 函数直接绘 ...
- 使用python中的matplotlib 画图,show后关闭窗口,继续运行命令
使用python中的matplotlib 画图,show后关闭窗口,继续运行命令 在用python中的matplotlib 画图时,show()函数总是要放在最后,且它阻止命令继续往下运行,直到1.0 ...
- python使用matplotlib画图
python使用matplotlib画图 matplotlib库是python最著名的画图库.它提供了一整套和matlab类似的命令API.十分适合交互式地进行制图. 先介绍了怎样使用matplotl ...
- python使用matplotlib画图,jieba分词、词云、selenuium、图片、音频、视频、文字识别、人脸识别
一.使用matplotlib画图 关注公众号"轻松学编程"了解更多. 使用matplotlib画柱形图 import matplotlib from matplotlib impo ...
- 使用Python matplotlib做动态曲线
今天看到“Python实时监控CPU使用率”的教程: https://www.w3cschool.cn/python3/python3-ja3d2z2g.html 自己也学习如何使用Python ma ...
- matplotlib 画图
matplotlib 画图 1. 画曲线图 Tompson = np.array([0, 0, 0, 0, 0.011, 0.051, 0.15, 0.251, 0.35, 0.44, 0 ...
- matplotlib画图
matplotlib画图 import numpy as np import matplotlib.pyplot as plt x1=[20,33,51,79,101,121,132,145,162, ...
- python seaborn 画图
python seaborn 画图 59888745@qq.com 2017.08.02 distplot( ) kdeplot( ) distplot( )为hist加强版, kdeplot( ) ...
随机推荐
- HDU 1681 Frobenius
题目链接:Frobenius 思路:想了很久还是没转过弯来. 递推. 初始化vis[0] = 1,每次有四种方法扩展,这样能扩展到所有能被表示的数.上界的判定,如果一万以内的数都能被表示,那以后的数肯 ...
- 使用read write 读写socket
一旦,我们建立好了tcp连接之后,我们就可以把得到的fd当作文件描述符来使用. 由此网络程序里最基本的函数就是read和write函数了. 写函数: ssize_t write(int fd, con ...
- placeholder在IE8中兼容性问题解决
placeholder是HTML5中的一个属性,可以在文本框中设置placeholder属性来显示一些提示性的文字,但对IE10以下的浏览器不支持,下面方法可以让placeholder能够使用在IE1 ...
- 精通JS 笔记
一,javascript数据类型:undefined,null,boolean,number,string,object 五种加一种复杂类型. 注意大小写,区分大不写函数:functiontypeof ...
- jQuery初步
1.jQuery开发步骤 jQuery是第三方开源组织基于js写的一款跨主流浏览器的实用库. (1)引用第三方js库文件,<script type="text/javascript&q ...
- hadoop源码阅读
1.Hadoop的包的功能分析 2.由于Hadoop的MapReduce和HDFS都有通信的需求,需要对通信的对象进行序列化.Hadoop并没有采用java的序列化,而是引入它自己的系统.org.ap ...
- Unity安卓连接profile调试
通过USB ADB 1.从Unity中Export Android 工程的时候一定要勾选 Development Build,autoconnect profiler 2.cmd进入adb的目录(打开 ...
- [转]diskpart命令
from: http://support.microsoft.com/kb/300415/zh-cn Diskpart 与许多命令行实用工具不同,原因是它不以单行模式操作.相反,当您启动该实用工具后, ...
- JVM-对象
1.对象的创建 当虚拟机遇到一条new指令时,首先去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已经被加载.解析和初始化.如果没有,那必须先执行相应的类加 ...
- 在hibernate中用sql语句
在hibernate中用sql语句,语句是createSQLquery 查出来的是,一列或者多列的数据,要将其转化为对象,有两种方式, 对于已经被hibernate所管理的实体类,在后面加.adden ...