pycharm matplotlib.pyplot 绘图一闪而过解决办法 | 您所在的位置:网站首页 › steam跳成就没有图解决办法 › pycharm matplotlib.pyplot 绘图一闪而过解决办法 |
今天在写python作业的时候发现用python绘图使用show方法出现了一点问题,什么问题呢, 如题,绘制的窗口一闪而过,不留痕迹。 怎么解决,问百度而得之…… 发现很多都是遇到不识别turtle的关键字,和我遇到的问题都不一样,(这就很麻烦 然后浏览了一下觉得有些麻烦(主要是感觉解决不了我的问题 再然后,为了确保我的操作正确,我用了刘老师上课讲的例子,也就是↓ 这四行代码得到的图形应该是↓这个样子 所以怎么肥四 我查了点资料看了很多大佬的博客,也没找到官方原因,最赞的一篇但是和我前提有些不一样的博客里面是这样子写的 (博客地址:https://www.cnblogs.com/maria-ld/p/8486442.html) 前提: 1.导入正确版本的matplotlib库 2.代码最后调用matplotlibku中pyplot.show()方法 3.无其他低级错误 解决步骤: 1.在导入pyplot之前.需要输入如下步骤: import matplotlib as mpl mpl.use('Agg') import matplotlib.pyplot as plt2.此时运行python程序,虽然不报错,但是并没有绘图界面弹出 在命令行下面面输入如下命令: import matplotlib print(matplotlib.get_backend())将得到的字符串结果替换mlp.use(‘Agg’)中Agg’即可 例如:我的print(matplotlib.get_backend())结果为TkAgg,替换后为:mpl.use('TkAgg') 3.显示正常 4.至于原因,个人能力有限,无法解释透彻 然后我原先的写的代码是没有报错的,那为什么闪退呢,我不得其解 于是,我真的是灵机一动想到老师说其实不定义figure和subplot对象也可以完成绘图,于是,我就这样试了一下。 把最后一行的fig.show()换成plt.show()就得到了想要的图形 import matplotlib.pyplot as plt fig = plt.figure() ax = fig.add_subplot(1,1,1) ax.plot(np.arange(10)) plt.show()但是要注意:在已有若干subplot的情况下,对plt绘图将绘制在最后一次被操作的subplot上 没了问题暂时解决,不知道有没有朋友和我遇到情况一样的= = 在线等一个更好的解决办法 |
CopyRight 2018-2019 实验室设备网 版权所有 |