matplotlib त्रुटि - कोई भी मॉड्यूल जिसका नाम tkinter नहीं है


195

मैंने विंडोज़ 10 पर Pycharm IDE के माध्यम से matplotlib पैकेज का उपयोग करने की कोशिश की। जब मैं यह कोड चलाता हूं:

from matplotlib import pyplot

मुझे निम्नलिखित त्रुटि मिलती है:

ImportError: No module named 'tkinter'

मुझे पता है कि अजगर 2.x में इसे टिंकर कहा जाता था, लेकिन यह समस्या नहीं है - मैंने सिर्फ एक नया अजगर 3.5.1 स्थापित किया।

EDIT: इसके अलावा, मैंने 'टिंकर' और 'टिक्चर' को भी आयात करने की कोशिश की - इनमें से किसी ने भी काम नहीं किया (दोनों ने मेरे द्वारा बताए गए त्रुटि संदेश को वापस कर दिया)।


क्या आपने टेंकर आयात किया है import Tkinterया import tkinter?
एविऑन

1
हाँ, यह उल्लेख करना भूल गया ... एक ही त्रुटि संदेश मिला
Noamgot

ImportError: No module named '_tkinter', please install the python3-tk package?
knh170

@ knh170 नहीं, बस मेरे मूल पोस्ट में दिखाया गया संदेश।
Noamgot

4
ऐसा लगता है कि आपने कस्टम इंस्टॉलेशन का उपयोग किया है। अजगर इंस्टॉलर का उपयोग करें, संशोधित करें और फिर td / tk और IDLE पर टिक करें
omilus

जवाबों:


221
sudo apt-get install python3-tk

फिर,

>> import tkinter # all fine

संपादित करें :

विंडोज के लिए, मुझे लगता है कि समस्या यह है कि आपने पूरा पायथन पैकेज स्थापित नहीं किया है। चूँकि टिंकर को पाइथन के साथ बॉक्स से बाहर भेज दिया जाना चाहिए। देखें: http://www.tkdocs.com/tutorial/install.html

मेरा सुझाव है कि ipython स्थापित करें , जो शक्तिशाली शेल और आवश्यक पैकेज भी प्रदान करता है।


यह काम कर रहा है! धन्यवाद! (मैंने अपनी पोस्ट में आपके द्वारा डाले गए लिंक के माध्यम से एनाकोंडा स्थापित किया है)
Noamgot

3
यदि आप एक CentOS बॉक्स पर हैं, तो कमांड हैsudo yum install python36u-tkinter.x86_64
n1c9

मैं pycharm का उपयोग कर रहा हूं और मुझे पैकेज के गुम होने के संबंध में वही त्रुटि मिली। Tkinter पैकेज स्थापित करने के बाद matplotlib ने ठीक काम किया। साभार @ knh170
debaonline4u

Venv में python3 का उपयोग करके उबंटू 18.04 के साथ मेरे लिए काम किया। बस इसे स्थापित करें: sudo apt-get install python3-tk तब आप परीक्षण कर सकते हैं python3 शेल से: matplotlib import pyplot से
serfer2

1
@ knh170 क्या हम पाइप का उपयोग करके टिंकर को स्थापित कर सकते हैं? मैं इससे संबंधित कुछ भी नहीं खोज सकता
स्कॉट यांग

99

आप उपयोग कर सकते हैं

import matplotlib
matplotlib.use('agg')
import matplotlib.pyplot as plt

यदि आप tkinterबिल्कुल भी उपयोग नहीं करना चाहते हैं ।

%matplotlib inlineअगर एक का उपयोग कर भी अपनी नोटबुक के शीर्ष पर उपयोग करने के लिए मत भूलना ।

EDIT: matplotlib के लिए aggएक अलग बैकेंड है tkinter


1
यह अच्छा है, क्योंकि एक सर्वर के साथ काम करने के लिए मुझे X11 की आवश्यकता नहीं है और मेरे पास कुछ प्रोग्राम हैं, लेकिन मैंने जो कुछ स्थापित किया है, वह matplotlib पर निर्भरता रखता है।
rien333

2
बहुत खुबस! मामले में कोई भी सोच रहा है कि यह कैसे काम करता है
मैट

2
यदि आप कुछ करना चाहते हैं तो यह समाधान काम नहीं करता है
बेहन गुल्ल

4
बस इस उत्तर को जोड़ने के लिए: aggएक गैर-जीयूआई बैकएंड है, इसलिए plt.show()इसका कोई प्रभाव नहीं होगा। लेकिन आप अभी भी कर सकते हैं plt.savefig(filename)और त्वरित डीबगिंग के लिए फ़ाइल को देखें।
निको

1
इस टेंकरर त्रुटि से निपटने से मेरा समय बचता है।
कष्टप्रद_संकट

35

सेंटोस पर, पैकेज के नाम और कमांड अलग-अलग हैं। आपको करने की आवश्यकता होगी:

sudo yum install tkinter

सम्स्या को ठीक कर्ने के लिये।


29

के लिए विंडोज उपयोगकर्ताओं, वहाँ फिर से इंस्टॉलर डाउनलोड करने के लिए आवश्यकता नहीं है। बस निम्नलिखित करें:

  1. प्रारंभ मेनू पर जाएं, प्रोग्राम और सुविधाएँ टाइप करें ,
  2. पाइथन संस्करण का चयन करें (मेरे लिए यह पाइथन 3.6.5 (64-बिट) ),
  3. राइट क्लिक करें, प्रेस बदलें ,
  4. क्लिक करें संशोधित करें ,
  5. का चयन करें टीडी / टी और निष्क्रिय (जो tkinter स्थापित करता है) और क्लिक अगले

स्थापना के लिए प्रतीक्षा करें और आप कर रहे हैं।


4
धन्यवाद। यह दूसरों के बीच सबसे उपयोगी और सही उत्तर है। (विंडोज ओएस उपयोगकर्ताओं के लिए)
रुस्लान के।

20

इस समस्या के लिए खोजे गए लगभग सभी उत्तरों में कहा गया है कि विंडोज पर पायथन पहले से ही स्थापित किए गए टिंकर और टीएलसी के साथ आता है, और मुझे कोई सौभाग्य नहीं था कि मैं पाइप, या actviestate.com साइट का उपयोग करके उन्हें डाउनलोड या इंस्टॉल करने की कोशिश करूं। मैंने अंततः पाया कि जब मैं बाइनरी इंस्टॉलर का उपयोग करके अजगर स्थापित कर रहा था, तो मैंने टीसीएल और टिंकर से संबंधित मॉड्यूल को अनियंत्रित कर दिया था। इसलिए, मैंने बाइनरी इंस्टॉलर को फिर से चलाया और इस विकल्प का चयन करके इस समय तक अपने पायथन संस्करण को संशोधित करना चुना। फिर कुछ भी मैन्युअल रूप से करने की आवश्यकता नहीं है। यदि आप अपने अजगर टर्मिनल पर जाते हैं, तो निम्न आज्ञाओं को आपको अपने अजगर के साथ स्थापित टेंकर का संस्करण दिखाना चाहिए:

import tkinter
import _tkinter
tkinter._test()

1
सही बात। एक विंडोज इंस्टाल एकमात्र सिस्टम है जहां ऐसा हो सकता है - जैसा कि खुद के लिए था। +1। यह निश्चित रूप से विंडोज इंस्टॉल वाले उपयोगकर्ताओं के लिए ध्यान देने योग्य है।
marcushobson

18

अगर आप फेडोरा का उपयोग कर रहे हैं तो पहले टिंकर को स्थापित करें

sudo dnf install python3-tkinter

मुझे नहीं लगता कि आपको टिंकर आयात करने की आवश्यकता है बाद में मैं आपको virtualenv का उपयोग करने का सुझाव देता हूं

$ python3 -m venv myvenv
$ source myvenv/bin/activate

और पाइप का उपयोग करके आवश्यक पैकेज जोड़ें


10

CentOS 7 और पायथन 3.4 पर, कमांड है sudo yum install python34-tkinter

पायथन 3.6 के साथ रेडहैट 7.4 पर, कमांड है sudo yum install rh-python36-python-tkinter


3
सेंटोस 7 और पायथन 3.6 पर, कमांड हैsudo yum install python36u-tkinter.x86_64
रोब हॉल

8

विंडोज़ उपयोगकर्ताओं के लिए, इंस्टॉलर को फिर से चलाएँ। संशोधित करें का चयन करें। Tcl / tk और IDLE के लिए बॉक्स चेक करें। इसके लिए विवरण "टिक्कटर इंस्टॉल करता है" कहता है


8

उबंटू में, 2018 की शुरुआत में, python3.6-tkubuntu's (xenial / 16.04) सामान्य वितरण पर नहीं है, इसलिए भले ही आपके पास इसके पहले के संस्करण python-tkकाम नहीं करेंगे।

मेरा समाधान सब कुछ सेट अप का उपयोग करना था python 3.5:

 sudo apt install python3.5-tk
 virtualenv --python=`which python3.5` python-env
 source python-env/bin/activate
 pip install -r requirements.txt

और अब matplotlibपा सकते हैं tkinter

संपादित करें :

मुझे बस 3.6 की आवश्यकता थी, और चाल थी:

sudo apt install tk-dev

और फिर python3.6 का पुनर्निर्माण करें , जैसे , बाद tk-dev में:

./configure
make
make install

3
अद्यतन: अब वहाँ है एक python3.6-tk! sudo apt install python3.6-tkयहाँ काम करता है :)
लुइस

4

यदि आप 3.6 3.6 का उपयोग कर रहे हैं, तो यह मेरे लिए काम कर रहा है:

sudo apt-get install python3.6-tk

के बजाय

sudo apt-get install python3-tk

जो कि python3 के अन्य संस्करणों के लिए काम करता है


4
मेरे पास ubuntu 16.04 पर एक python3.6-tk पैकेज नहीं है।
ब्रूक्स

@ब्रुक, यहां भी
नि: शुल्क Url

सेंटो पर भी मौजूद नहीं था
रोब हॉल

यह अब ubuntu 16.04
यू-लिन चेन

3

मेरे जैसे गरीब लोगों के लिए अजगर 3.7 का उपयोग करना । आपको python3.7-tkपैकेज चाहिए।

sudo apt install python3.7-tk

$ python
Python 3.7.4 (default, Sep  2 2019, 20:44:09)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tkinter
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'tkinter'
>>> exit()

ध्यान दें। python3-tkस्थापित है। लेकिन नहीं python3.7-tk

$ sudo apt install python3.7-tk
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
  tix python3.7-tk-dbg
The following NEW packages will be installed:
  python3.7-tk
0 upgraded, 1 newly installed, 0 to remove and 34 not upgraded.
Need to get 143 kB of archives.
After this operation, 534 kB of additional disk space will be used.
Get:1 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu xenial/main amd64 python3.7-tk amd64 3.7.4-1+xenial2 [143
kB]
Fetched 143 kB in 0s (364 kB/s)
Selecting previously unselected package python3.7-tk:amd64.
(Reading database ... 256375 files and directories currently installed.)
Preparing to unpack .../python3.7-tk_3.7.4-1+xenial2_amd64.deb ...
Unpacking python3.7-tk:amd64 (3.7.4-1+xenial2) ...
Setting up python3.7-tk:amd64 (3.7.4-1+xenial2) ...

इसे स्थापित करने के बाद, सभी अच्छे।

$ python3
Python 3.7.4 (default, Sep  2 2019, 20:44:09)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tkinter
>>> exit()

2

CentOS 6.5 पर अजगर 2.7 के साथ मुझे ऐसा करने की आवश्यकता है: yum install python27-tkinter


1
मुझे "कोई पैकेज python27-tkinter उपलब्ध नहीं हो रहा है।"
प्रेट्र्रे

2

कभी-कभी (उदाहरण के लिए osgeo4w वितरण में) टिंकर को हटा दिया जाता है।

बदलने की कोशिश करें matplotlib बैकएंड एडिटिंग matplotlibrc फाइल को [python install dir]/matplotlib/mpl-data/matplotlibrcबदलने में स्थित बैकएंड पैरामीटर backend: TkAggको कुछ और जैसे backend: Qt4Aggयहाँ वर्णित है: http://matplotlib.org/faq/usage_faq.html#what-is-a-backend


1

चूंकि मैं उबंटू में पायथन 3.7 का उपयोग कर रहा हूं, मुझे इसका उपयोग करना था:

sudo apt-get install python3.7-tk

0

हो सकता है कि आपने स्रोत से अजगर स्थापित किया हो। इस मामले में, आप tcl / tk समर्थित के साथ अजगर को फिर से जोड़ सकते हैं।

  1. Http://www.tcl.tk/software/tcltk/download.html से tcl / tk की शिकायत करें और इंस्टॉल करें , मुझे लगता है कि आप पर अजगर स्थापित कर देंगे /home/xxx/local/tcl-tk/
# install tcl
wget -c https://prdownloads.sourceforge.net/tcl/tcl8.6.9-src.tar.gz
tar -xvzf tcl8.6.9-src.tar.gz
cd tcl8.6.9
./configure --prefix=/home/xxx/local/tcl-tk/
make
make install

# install tk
wget -c https://prdownloads.sourceforge.net/tcl/tk8.6.9.1-src.tar.gz
tar -xvzf tk8.6.9.1-src.tar.gz
cd tk8.6.9.1
./configure --prefix=/home/xxx/local/tcl-tk/
make
make install
  1. उदाहरण के लिए, tcl / tk समर्थित पुनरावर्ती अजगर
# download the source code of python and decompress it first.

cd <your-python-src-dir>
./configure --prefix=/home/xxx/local/python \
 --with-tcltk-includes=/home/xxx/local/tcl-tk/include \
 --with-tcltk-libs=/home/xxx/local/tcl-tk/lib
make 
make install

0

मेरे पास विन x86 / 64 पर एक ही मुद्दा था क्योंकि मेरे कस्टम पायथन 3.7 इंस्टॉलेशन में Tcl पैकेज शामिल नहीं थे, इसलिए बस अपने अजगर को संशोधित या पुनः स्थापित करें

https://www.python.org/downloads/release/python-370/

यहां छवि विवरण दर्ज करें

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.