用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( ) ...
随机推荐
- HBase High Level Architecutre
- HTML内容整理
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- 转:Oracle中的rownum不能使用大于>的问题
一.对rownum的说明 关于Oracle 的 rownum 问题,很多资料都说不支持SQL语句中的“>.>=.=.between...and”运算符,只能用如下运算符号“<.< ...
- PowerMock遇到的问题——3
在用WhiteBox调用对象的私有方法时,如果要传的参数为空,如果直接在参数列表中写null的话,可能会报空指针异常,可以定义一个变量使他等于空,再把变量传进去就可以了.
- EntLib Unity父类的依赖注入问题
Unity的注入有3种方式:构造函数.[Dependency]属性.[InjectionMethod]方法.这3种方式涉及到的interface或class都会去Registrations里找,找不到 ...
- 从报错“无效操作,连接被关闭”探究Transaction的Timeout超时机制
1.报错如下:Invalid Operation the connection is closed,无效操作,连接被关闭.这个错误是并不是每次都报,只有在复杂操作.大事务的情况下才偶然报出来. sta ...
- Struts2 的验证
概述 一个健壮的 web 应用程序必须确保用户输入是合法.有效的. Struts2 的输入验证 –基于 XWork Validation Framework 的声明式验证:Struts2 提供了一些基 ...
- poj 1797 Heavy Transportation(最短路径Dijkdtra)
Heavy Transportation Time Limit: 3000MS Memory Limit: 30000K Total Submissions: 26968 Accepted: ...
- data属性
本框架内置组件以及部分插件可以通过data属性来初始化并使用,通常通过data-toggle来调用API(toggle是触发器的意思,例如我们创建一个navtab标签可以通过为a的data-toggl ...
- 网络安全之PHP安全编程建议
要提供互联网服务,当你在开发代码的时候必须时刻保持安全意识.可能大部分 PHP 脚本都对安全问题都不在意,这很大程度上是因为有大量的 无经验程序员 在使用这门语言.但是,没有理由让你因为对你的代码的不 ...