Matplot使用笔记


最简单的模板

一次性使用各种控件图单窗口绘制):

from numpy import *
import matplotlib.pyplot as plt
plt.subplot(111)
x = linspace(0,5,100)
y =sin(x) + x
plt.plot(x, y,'r-')
plt.bar(x[::10],y[::10],0.3,align='center', alpha=0.8,color=(0.2,0.1,1))
plt.title('Title')
plt.xlabel('X Label')
plt.show()

各功能可参考 pyplot summary


获取axes进行精细控制

from numpy import *
import matplotlib.pyplot as plt
fig = plt.figure(2)
ax = fig.add_subplot(111)
ax.plot(range(10))
ax.inshow(im,cm='gray')
rect = mpatches.Rectangle([100,150], 200, 200, linewidth = 2.5, edgecolor='r', facecolor = 'none')
ax.add_patch(rect)
fig.canvas.draw()
fig.show()

如何选择绘图后端(到文件)?

from matplotlib.backends.backend_pdf import PdfPages
pp = PdfPages('multipage.pdf')
plt.savefig(pp, format='pdf')
pp.savefig()
pp.close()


import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
plt.plot([1,2,3])
plt.savefig('myfig')

如何绘制方框?
绘制其他图形的样例代码?
动画模式:多帧图片快速显示?

BUG:
Anaconda包 的 Qt IPython console在使用matplotlib时,默认用的绘图backend是Qt4Agg。若plt.ion()使用非阻塞模式,则绘图后窗口无图、无响应,主python kernel die

winPython包 的 Qt IPython console默认使用’module://IPython.kernel.zmq.pylab.backend_inline’作为后端,并使用inline模式。每条指令之后绘图。如何叠加?

Spyder也使用Qt4Agg后端,弹出窗口基本正常。但多次使用plt.show()的行为比较诡异

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值