【机器学习入门笔记12:matplotlib绘图模块的使用】20190217

2019-02-17  by 崔斐然  

我们先在anaconda中参考笔记1中的配置方法安装matlpotlib。

plt.plot绘制折线图,其中参数1:x轴坐标,参数2:Y轴坐标,参数3:颜色

 

import numpy as np
import matplotlib.pyplot as plt
# 实际操作中发现加上下面的命令才能一次显示,
%matplotlib inline
# 创建XY轴
x = np.array([1,2,3,4,5,6,7,8])
y = np.array([3,5,7,6,2,6,10,15])

# plt.plot绘制折线图,其中参数1:x轴坐标,参数2:Y轴坐标,参数3:颜色
plt.plot(x,y,'red')
# 参数4:线条的宽度
plt.plot(x,y,'green',lw=10)

# # 绘制柱状图,参数1:x 参数2:y 参数3:线条的宽度  参数4:透明度  参数5:颜色
plt.bar(x,y,0.2,alpha=1,color='blue')
plt.show()

在pycharm运行中出现以下问题:

2019-02-17 22:51:38.162 python[17334:2131842] -[NSApplication _setup:]: unrecognized selector sent to instance 0x7fca4f44eef0
2019-02-17 22:51:38.166 python[17334:2131842] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSApplication _setup:]: unrecognized selector sent to instance 0x7fca4f44eef0'
*** First throw call stack:
(
    0   CoreFoundation                      0x00007fff43b7decd __exceptionPreprocess + 256
    1   libobjc.A.dylib                     0x00007fff6fc35720 objc_exception_throw + 48
    3   CoreFoundation                      0x00007fff43b1fb40 ___forwarding___ + 1486
  ……
    49  python                              0x0000000105d1f7c6 Py_Main + 3734
    50  python                              0x0000000105b50f59 main + 313
    51  libdyld.dylib                       0x00007fff70d03ed9 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException

Process finished with exit code 134 (interrupted by signal 6: SIGABRT)

实验1:在jupyter中没有问题,不知道哪里的事情,

实验2:搜索到的一条是修改matlpotlib‎⁨的配置文件可以解决,打开:

macOS⁩ ▸ ⁨用户⁩ ▸ ⁨dave⁩ ▸ ⁨anaconda3⁩ ▸ ⁨envs⁩ ▸ ⁨TensorFlow37⁩ ▸ ⁨lib⁩ ▸ ⁨python3.7⁩ ▸ ⁨site-packages⁩ ▸ ⁨matplotlib⁩ ▸ ⁨mpl-data⁩

 修改 backend,不行。

【机器学习入门笔记12:matplotlib绘图模块的使用】20190217_第1张图片

 

方法二:参考Jancydc的博文:根治python中画图(matplotlib)“NSInvalidArgumentException”报错问题

真的解决了这个问题!

:如果是Anaconda安装的Python环境的话,首先我们需要重新配置我们的环境,先打开到这个页面:

【机器学习入门笔记12:matplotlib绘图模块的使用】20190217_第2张图片
我以前都是直接点击Conda Environment然后再来配置环境,这样话就会出现我所说的上面的报错问题,而正确的做法是点击第三个选项System Interpreter,如图

 

【机器学习入门笔记12:matplotlib绘图模块的使用】20190217_第3张图片

这应该是mac的自带python版本,然后我们添加新的环境,并找到Anaconda3文件中的python.app,单击并点开Contents中的MacOS文件夹,这时应该会出现python,如图:

【机器学习入门笔记12:matplotlib绘图模块的使用】20190217_第4张图片

选中并点击他,然后默认环境就配置好了,以后直接在终端安装各种包就都会在这个环境里了,做重要的是还不会出现所说的“NSInvalidArgumentException”报错,**这是最关键的!!!**实证如下:

import numpy as np
import matplotlib.pyplot as plt


# 创建XY轴
x = np.array([1,2,3,4,5,6,7,8])
y = np.array([3,5,7,6,2,6,10,15])

# plt.plot绘制折线图,其中参数1:x轴坐标,参数2:Y轴坐标,参数3:颜色
plt.plot(x,y,'r')
# 参数4:线条的宽度
plt.plot(x,y,'g',lw=10)

# 绘制柱状图,参数1:x 参数2:y 参数3:线条的宽度  参数4:透明度  参数5:颜色
plt.bar(x,y,0.2,alpha=1,color='b')
plt.show()


输出图:

【机器学习入门笔记12:matplotlib绘图模块的使用】20190217_第5张图片

这样就彻底摆脱了前面***治标***的方法,开心ing!!!
--------------------- 
作者:Jancydc 
来源:CSDN 
原文:https://blog.csdn.net/Jancydc/article/details/84500912 
版权声明:本文为博主原创文章,转载请附上博文链接!

你可能感兴趣的:(机器视觉学习笔记,TensorFlow,matplotlib报错解决,NSException,Python绘图)