用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( ) ...
随机推荐
- ubuntu 软件安装的几种方法
说明:由于图形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装.卸载和删除的方法. 一.U ...
- String类的写时拷贝
#include<iostream>using namespace std; class String;ostream& operator<<(ostream & ...
- CodeIgniterCodeigniter+PHPExcel导出数据到Excel文件
解压压缩包里的Classes文件夹中的内容到application\libraries\目录下,目录结构如下:--application\libraries\PHPExcel.php--applica ...
- IT公司100题-12-求1+2+…+n
问题描述: 求1+2+…+n,要求不能使用乘除法.for.while.if.else.switch.case等关键字以及条件判断语句(A?B:C). 分析: 利用类的静态变量实现: new一含有n ...
- Codeforce385C 树状数组+素因子分解
题目大意: 给多个区间的询问,在询问区间内每一个出现的素数去计算所有数中有多少个数能被这个素数整除 然后将所有素数得到的对应值求和 这里因为初始给定的数不超过10000000,最多670000不到的素 ...
- [安卓]softap
http://www.cnblogs.com/javawebsoa/archive/2013/05/29/3106758.html
- unix shell-01 file
1 一个文件有三种访问方式: 1.读,可以显示该文件的内容 2.写,删除或者编辑这个文件 3.执行,如果该文件时一个shell脚本或程序 按照文件所针对的用户,用户可以分为三种: 1.文件属主,即该文 ...
- iphone/ipod网页开发教程及规则
侦测iPhone/iPod 开发特定设备的移动网站,首先要做的就是设备侦测了.下面是使用Javascript侦测iPhone/iPod的UA,然后转向到专属的URL. if((navigator.us ...
- mybatis 的 resulttype 和resultMap
resultType适合返回值比较简单的,比如一个数据类型,或者一个对象.比如对象的情况,是将表的列名和对象的属性一一对应的. 但是resultType无法处理返回值比较复杂的,特别是连接查询,需要用 ...
- iOS开发多线程篇—线程间的通信(转)
这里转载 给自己一个备份 一.简单说明 线程间通信:在1个进程中,线程往往不是孤立存在的,多个线程之间需要经常进行通信 线程间通信的体现 1个线程传递数据给另1个线程 在1个线程中执行完特定任务后,转 ...