码迷,mamicode.com
首页 > 编程语言 > 详细

Python画图

时间:2018-02-10 13:06:30      阅读:434      评论:0      收藏:0      [点我收藏+]

标签:red   grid   with   注释   生成   blob   .text   ack   设定   

  Python里经常需要绘图,客http://nbviewer.jupyter.org/github/lijin-THU/notes-python/blob/master/index.ipynb ,此博文里有详细的Python学习笔记,针对绘图也有详细的说明。此文仅为自己学习实践的记录。

1. plt.plot(x1,y1,format_str, x2,y2,format_str)可以用来画多组图。
   plt.show 函数用来显示图像。图像格式如下。除了用format_str指定格式外,还可以用linewidth和color显示的指定线条格式。
   plt.plot 函数有范围值,返回的是各组线条的句柄,通过函数plt.setp(line, ...)设置句柄,可以改变线条宽度颜色等属性。

Plot 颜色格式
字符 颜色
‘b’  蓝色,blue
 ‘g’ 绿色,green
 ‘r’ 红色,red
 ‘c’ 青色,cyan
 ‘m’ 品红,magenta
 ‘y’ 黄色,yellow
 ‘k’ 黑色,black
 ‘w’ 白色,white

 

Plot 线条格式
 字符  类型  字符  类型
 ‘-‘  实线  ‘--‘  虚线
 ‘-.‘  虚点线  ‘:‘  点线
 ‘.‘  ‘,‘  像素点
 ‘o‘  圆点  ‘v‘  下三角点
 ‘^‘  上三角点  ‘<‘  左三角点
 ‘>‘  右三角点  ‘1‘   下三叉点
 ‘2‘  上三叉点  ‘3‘    左三叉点
 ‘4‘  右三叉点  ‘s‘  正方点
 ‘p‘  五角点   ‘*‘   星形点
 ‘h‘  六边形点1  ‘H‘  六边形点2
 ‘+‘   加号点   ‘x‘  乘号点
 ‘D‘  实心菱形点   ‘d‘   瘦菱形点
 ‘_‘   横线点     

 

  2. 坐标轴显示范围设定,plt.axis([xmin, xmax, ymin, ymax])

  3. plt.figure(num) 产生指定编号为num的图。plt.subplot(rows, cols, fignum) 在一幅图中产生多幅子图。当 numrows * numcols < 10 时,中间的逗号可以省略,因此 plt.subplot(211) 就相当于 plt.subplot(2,1,1)。

  4. plt.xlabel, plt.ylabel, plt.title 产生图的对应标签。plt.text(x,y,str) 在指定位置生成文本说明。plt.grid(True/False)显示网格。

  5. plt.annotate(str(注释的内容), xy=(x,y), xytext=(x,y), str(注释的样式))。

import numpy as np
import matplotlib.pyplot as plt

t = np.arange(0, 5, 0.1)
plt.figure(1)
plt.subplot(211)
plt.title(‘Sin-function‘)
plt.xlabel(‘t‘)
plt.ylabel(‘y‘)
plt.axis([0, 4, -1, 1])
plt.plot(t, np.sin(2*np.pi*t)*0.5, ‘b-‘, t, np.exp(-t)*np.cos(2*np.pi*t), ‘g-.‘)
plt.annotate(‘local max‘, xy = (5/4, 0.5), xytext = (2, 0.8), arrowprops=dict(facecolor=‘black‘, shrink=0.05))
plt.subplot(2,1,2)
plt.plot(t, np.cos(2*np.pi*t), ‘r--‘)
plt.title(‘Cos-function‘)
plt.xlabel(‘t‘)
plt.ylabel(‘y‘)
plt.axis([0, 5, -1, 1])
plt.tight_layout(0.5) # 设定子图之间的间距
plt.savefig(‘plt.jpg‘) # 存储绘图
plt.show()

6. 使用style配置pyplot风格。pyplot有多种预设风格,可以使用 plt.style.available 来查看:包括[u‘dark_background‘, u‘bmh‘, u‘grayscale‘, u‘ggplot‘, u‘fivethirtyeight‘]。
  plt.figure(1)
  x = np.linspace(0, 2*np.pi)
  y = np.sin(x)

  with plt.style.context((‘dark_background‘)):
    plt.plot(x, y, ‘r-o‘)
    plt.show()
  ## 黑色背景

 

 

Python画图

标签:red   grid   with   注释   生成   blob   .text   ack   设定   

原文地址:https://www.cnblogs.com/PowerTransfer/p/8438374.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!