Python开发环境Wing IDE的matplotlib 2D绘图库代码调试技巧

Wing IDE是一个集成开发环境,可用于加快matplotlib2D图形库的Python代码的编写和调试进程。Wing IDE提供自动完成、调用提示、调试器,以及许多其他功能,可帮助用户编写、浏览和了解Python代码。

 

工作于Python Shell

matplotlib的用户经常会交互式地工作于Python命令行shell。 例如:

 
from pylab import plot,show,close

x = range(10)

plot(x)

show()

y = [2, 8, 3, 9, 4]

plot(y)

close()
 

在某些环境中,直到关闭绘图窗口,上面show()调用都会阻塞。默认情况下Wing IDE将会修改matplotlib事件循环的方式,当被输入到集成的Python Shell中时,show()调用将不会阻塞,绘图窗口将会一直更新作为额外的命令类型。这样可以更容易的交互测试新代码和所绘制的图形。

编辑器代码可以使用Source菜单中的Python Shell项目Evaluate File在Python Shell执行,或者是使用编辑器Python Shell项目Evaluate Selection在Python Shell执行。默认情况下,Python Shell会在评估整个文件之前重启;这可以在Python Shell的选项菜单中禁用。

这个特殊的事件循环支持已经在TkAgg、GTKAgg、WXAgg(wxPython 2.5 +)和Qt4Agg后端中进行了实施,暂时不支持其它的后端。

解决问题

如果在Python Shell或Debug Probe中输入show()模块,如果plots无法更新,或如果遇到matplotlib其他事件循环工作问题,可以:

(1)     在签发其它命令之前,尝试以下方式切换到另一个后端:

import matplotlib

matplotlib.use('TkAgg')

(2)     尝试在Extensions选项卡中的Project Properties完全禁用matplotlib支持,然后从选项菜单重新启动Python Shell并重启调试过程。这可以防止在Python Shell和Debug Probe中交互使用matplotlib。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值