파이썬에서 matplotlib 드로잉이 제대로 작동하지 않는 경우 해결
12537 단어 python2.7matplotlib
소개
Anaconda 경유로 인스톨했을 것이지만, 묘화가 잘 되지 않는 matplotlib 의 대처가 간단합니다만, 의외로 빠졌으므로, 소개해 둡니다.
개발 환경
· OS : Mac OS X EI Capitan (10.11.5)
· Python 2.7.12 : Anaconda 4.1.1 (x86_64)
실패 예
먼저 대화형 파이썬을 엽니다.
$ python
여기서 matplotlib의 간단한 드로잉 샘플을 넣어 보겠습니다.
>>> import matplotlib.pyplot as plt
objc[10813]: Class TKApplication is implemented in both /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk and /Users/{my_user_name}/anaconda2/lib/libtk8.5.dylib. One of the two will be used. Which one is undefined.
objc[10813]: Class TKMenu is implemented in both /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk and /Users/{my_user_name}/anaconda2/lib/libtk8.5.dylib. One of the two will be used. Which one is undefined.
objc[10813]: Class TKContentView is implemented in both /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk and /Users/{my_user_name}/anaconda2/lib/libtk8.5.dylib. One of the two will be used. Which one is undefined.
objc[10813]: Class TKWindow is implemented in both /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk and /Users/{my_user_name}/anaconda2/lib/libtk8.5.dylib. One of the two will be used. Which one is undefined.
>>> plt.plot([1,2,3,4])
[<matplotlib.lines.Line2D object at 0x10f365a90>]
>>> plt.show()
Exception in Tkinter callback
Traceback (most recent call last):
File "/Users/{my_user_name}/anaconda2/lib/python2.7/lib-tk/Tkinter.py", line 1537, in __call__
return self.func(*args)
File "/Users/{my_user_name}/anaconda2/lib/python2.7/site-packages/matplotlib/backends/backend_tkagg.py", line 283, in resize
self.show()
File "/Users/{my_user_name}/anaconda2/lib/python2.7/site-packages/matplotlib/backends/backend_tkagg.py", line 355, in draw
tkagg.blit(self._tkphoto, self.renderer._renderer, colormode=2)
File "/Users/{my_user_name}/anaconda2/lib/python2.7/site-packages/matplotlib/backends/tkagg.py", line 30, in blit
id(data), colormode, id(bbox_array))
TclError
이와 같이, 에러가 나오고, matplotlib의 import가 통과해, 묘화용의 GUI가 표시되지만, 실제의 묘화 처리는 잘 되지 않는 것을 알 수 있습니다.
해결책
아래 파일을 편집하여 해결했습니다.
vim ~/.matplotlib/matplotlibrc
이 파일의backend: TkAgg
되어 있는 부분을backend : Qt4Agg
로 변경하면 OK입니다.
변경 후, 마찬가지로 matplotlib의 간단한 그리기 샘플을 넣어 보겠습니다.
$ python
>>> import matplotlib.pyplot as plt
>>> plt.plot([1,2,3,4])
>>> plt.show()
이제 잘 그릴 수 있었습니다.
참고
· Why is pyplot giving me a TclError on osx?
· matplotlib에서 그래프를 표시 할 수 없음 [해결]
덤
따라 기다리고 있습니다!
Qiita : Carat 요시자키
twitter: @에서 t_ 요시자키
Hatena 블로그 : Carat COO 블로그
기계 학습을 맨투맨으로 배울 수 있는 가정 교사 서비스 「 키카가쿠 」
「수학→프로그래밍→Web어플리케이션」까지 단번에 배울 수 있는 「키카가쿠」에 흥미가 있는 분은 부담없이 연락해 주세요.
Reference
이 문제에 관하여(파이썬에서 matplotlib 드로잉이 제대로 작동하지 않는 경우 해결), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yoshizaki_91/items/bcb45e3bc936ec49ef00
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
먼저 대화형 파이썬을 엽니다.
$ python
여기서 matplotlib의 간단한 드로잉 샘플을 넣어 보겠습니다.
>>> import matplotlib.pyplot as plt
objc[10813]: Class TKApplication is implemented in both /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk and /Users/{my_user_name}/anaconda2/lib/libtk8.5.dylib. One of the two will be used. Which one is undefined.
objc[10813]: Class TKMenu is implemented in both /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk and /Users/{my_user_name}/anaconda2/lib/libtk8.5.dylib. One of the two will be used. Which one is undefined.
objc[10813]: Class TKContentView is implemented in both /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk and /Users/{my_user_name}/anaconda2/lib/libtk8.5.dylib. One of the two will be used. Which one is undefined.
objc[10813]: Class TKWindow is implemented in both /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk and /Users/{my_user_name}/anaconda2/lib/libtk8.5.dylib. One of the two will be used. Which one is undefined.
>>> plt.plot([1,2,3,4])
[<matplotlib.lines.Line2D object at 0x10f365a90>]
>>> plt.show()
Exception in Tkinter callback
Traceback (most recent call last):
File "/Users/{my_user_name}/anaconda2/lib/python2.7/lib-tk/Tkinter.py", line 1537, in __call__
return self.func(*args)
File "/Users/{my_user_name}/anaconda2/lib/python2.7/site-packages/matplotlib/backends/backend_tkagg.py", line 283, in resize
self.show()
File "/Users/{my_user_name}/anaconda2/lib/python2.7/site-packages/matplotlib/backends/backend_tkagg.py", line 355, in draw
tkagg.blit(self._tkphoto, self.renderer._renderer, colormode=2)
File "/Users/{my_user_name}/anaconda2/lib/python2.7/site-packages/matplotlib/backends/tkagg.py", line 30, in blit
id(data), colormode, id(bbox_array))
TclError
이와 같이, 에러가 나오고, matplotlib의 import가 통과해, 묘화용의 GUI가 표시되지만, 실제의 묘화 처리는 잘 되지 않는 것을 알 수 있습니다.
해결책
아래 파일을 편집하여 해결했습니다.
vim ~/.matplotlib/matplotlibrc
이 파일의backend: TkAgg
되어 있는 부분을backend : Qt4Agg
로 변경하면 OK입니다.
변경 후, 마찬가지로 matplotlib의 간단한 그리기 샘플을 넣어 보겠습니다.
$ python
>>> import matplotlib.pyplot as plt
>>> plt.plot([1,2,3,4])
>>> plt.show()
이제 잘 그릴 수 있었습니다.
참고
· Why is pyplot giving me a TclError on osx?
· matplotlib에서 그래프를 표시 할 수 없음 [해결]
덤
따라 기다리고 있습니다!
Qiita : Carat 요시자키
twitter: @에서 t_ 요시자키
Hatena 블로그 : Carat COO 블로그
기계 학습을 맨투맨으로 배울 수 있는 가정 교사 서비스 「 키카가쿠 」
「수학→프로그래밍→Web어플리케이션」까지 단번에 배울 수 있는 「키카가쿠」에 흥미가 있는 분은 부담없이 연락해 주세요.
Reference
이 문제에 관하여(파이썬에서 matplotlib 드로잉이 제대로 작동하지 않는 경우 해결), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yoshizaki_91/items/bcb45e3bc936ec49ef00
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
vim ~/.matplotlib/matplotlibrc
$ python
>>> import matplotlib.pyplot as plt
>>> plt.plot([1,2,3,4])
>>> plt.show()
· Why is pyplot giving me a TclError on osx?
· matplotlib에서 그래프를 표시 할 수 없음 [해결]
덤
따라 기다리고 있습니다!
Qiita : Carat 요시자키
twitter: @에서 t_ 요시자키
Hatena 블로그 : Carat COO 블로그
기계 학습을 맨투맨으로 배울 수 있는 가정 교사 서비스 「 키카가쿠 」
「수학→프로그래밍→Web어플리케이션」까지 단번에 배울 수 있는 「키카가쿠」에 흥미가 있는 분은 부담없이 연락해 주세요.
Reference
이 문제에 관하여(파이썬에서 matplotlib 드로잉이 제대로 작동하지 않는 경우 해결), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yoshizaki_91/items/bcb45e3bc936ec49ef00
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(파이썬에서 matplotlib 드로잉이 제대로 작동하지 않는 경우 해결), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yoshizaki_91/items/bcb45e3bc936ec49ef00텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)