在pycharm中使用matplotlib.pyplot 绘图时报错的解决
作者:柯西Cauchy 发布时间:2021-05-22 10:37:31
This application failed to start because it could not find or load the Qt platform plugin “windows” in ” “.
百度谷歌了好久都没能解决这个问题都没能解决
开始我以为是缺少windows这个包,但是代码里并没有用到,所以我打断点去看代码到底问题出在哪里
发现问题出在matplotlib上面,我猜想是Qt和matplotlib版本不兼容导致的,于是我卸载了这两个插件并重新安装
conda uninstall qt
conda uninstall matplotlib
conda install qt
conda install matplotlib
于是问题解决了
附:我发现有时候pip或者conda安装了工具包,但是pycharm还是识别不到,按照如下操作
会有奇效!
补充知识:Python PyCharm中matplotlib.pyplot.imshow()无法绘图
问题描述
在利用Anaconda3 + PyCharm 2018 实现神经网络的实践中,涉及到一个根据像素数组绘制图像的实践,如下所示(这里只需要关心image_array即可,对源数据的预处理可忽略):
# coding=utf-8
# author: BebDong
# 10/23/18
import numpy
import matplotlib.pyplot as plt
# 打开并读取文件
data_file = open("mnist_dataset/mnist_train_100.csv")
data_list = data_file.readlines()
data_file.close()
# image_array是一个28*28的像素数组
all_pixels = data_list[0].split(',')
image_array = numpy.asfarray(all_pixels[1:]).reshape((28, 28))
plt.imshow(image_array, cmap='gray', interpolation='None')
当运行时,控制台无报错信息,正常执行结束退出(exit code 0),在SciView出处无绘制出的指定图像。
解决
在网上找了一些资料,大部分解决方案是“调用show()”,也没有给出原因,但其实也不行。
经过一番查找,发现需要引入另外一个叫做pylab的包即可。(我想原因得靠自己查阅官方文档了)
# coding=utf-8
# author: BebDong
# 10/23/18
import numpy
import matplotlib.pyplot as plt
# 直接使用plt.imshow无法显示图片,需要导入pylab包
import pylab
# 打开并读取文件
data_file = open("mnist_dataset/mnist_train_100.csv")
data_list = data_file.readlines()
data_file.close()
# 拆分绘制28*28图形
all_pixels = data_list[0].split(',')
image_array = numpy.asfarray(all_pixels[1:]).reshape((28, 28))
plt.imshow(image_array, cmap='gray', interpolation='None')
pylab.show()
吐槽和思考
其实程序猿经常会遇到一些技术问题,最直接的方法就是上网查阅资料,看看有没有其他人遇到过相同问题,如何解决,这比翻阅官方文档显然效率高得多。
就个人感觉来说,目前国内的环境不容乐观,有时能看到好几篇一字不差的博文,竟然标注都是原创文章。这还算好,毕竟是原封不动的抄袭原文。更悲观的是,有些博文为了让其**“看起来”**不那么像抄袭,改得牛头马面,毫无逻辑可言。试问,您真的懂了原文的意思了吗?既然你都不懂,为何要加以“原创”的标签来展示和分享给他人呢?
个人认为,原创不一定非要100%是自己的东西。你看了某个文章,学习了某个技术,有一些自己的感悟和想法,用自己的语言将它描述出来也可以称之为原创。
来源:https://blog.csdn.net/qq_24699959/article/details/80909445


猜你喜欢
- 使用python制作好看的时钟,供大家参考,具体内容如下游戏用到初高中使用的三角函数等知识开发,长话短说,上完整程序。#-*- coding
- 如何用Sleep函数编译一个定时组件?见下: Private Declare Sub Sleep L
- 在循环对象和函数对象中,我们了解了循环器(iterator)的功能。循环器是对象的容器,包含有多个对象。通过调用循环器的next()方法 (
- 按照惯例,年底的淘宝的确是到了“需要改版的时候”。这次新版的淘宝首页上线,乍看并没有多少夺人眼球的地方,但仔细揣摩其中的细节,还是发现了不少
- 调用JSON.stringify将对象转为对应的字符串时,如果包含时间对象,时间对象会被转换为国家标准时间(ISO),而不是当前国家区域的时
- (wuhen注:document.all是ie特有的属性,不是万维网标准) 当页面上的控件同名且多个的时候,你首先做的是什么?判断长度?的确
- 前言from collections import namedtuple()命名元祖的工厂函数:在python中,collections 包
- 刚刚心血来潮,编了一个国际域名查询的功能页面,比较简单,没有做什么美化和修饰,主要利用了服务器端的XMLHTTP访问第三方服务器实现域名查询
- 在python显示图象时,我们用matplotlib模块时会遇到图像色彩失真问题,究竟是什么原因呢,下面就来看看究竟。待显示图像为:impo
- 一、pyc文件我们开发一个python脚本,文件的后缀为.py。如果运行这个py文件,Python内部会先将源码文件(.py文件)编译成字节
- python sys模块包含了与python解释器和它的环境有关的函数,这个你可以通过dir(sys)来查看他里面的方法和成员属性impor
- 官方给出Vue.filters(id , [definition])//id {string}//definition {function}
- 前言昨天写小项目的时候遇到了一个需求:把txt文档的数据导入到mysql数据库中,开始本来想直接用Mysql Workbench导入TXT文
- 前言一个表和多个表进行关联,但具体随着业务的加深,表不断的增加,关联的数量不断的增加,怎么通过一开始通过表的设计后,不在后期在修改表,彻底的
- 本文实例讲述了Python 函数用法。分享给大家供大家参考,具体如下:demo.py(函数定义):# say_hello() # 不能在定义
- 在附加数据库后查看不了数据库关系图,也无法建立数据库关系图 我的解决方法如下: 1、设置兼容级别为90(2005为90)(2000为80)
- 本文实例为大家分享了python学生管理系统的具体代码,供大家参考,具体内容如下类class Student: stuID = "
- 1、字符串(1)概念字符串英文名string,简称str。 字符串就是由一个个字符连接起来的组合, 你平时所见的字母、数
- 全局引用公共的组件及公共的JS文件1. 创建一个公共的目录 timeline ,里面包含 timeline.js 和 timeline.vu
- 一、运算符算术运算符:+ - * / 可以在select 语句中使用连接运算符:|| select deptno|| dname from