matplotlib error - no module named tkinter

后端 未结 16 1574
被撕碎了的回忆
被撕碎了的回忆 2020-11-28 04:10

I tried to use the matplotlib package via Pycharm IDE on windows 10. when I run this code:

from matplotlib import pyplot

I get the followin

相关标签:
16条回答
  • 2020-11-28 04:12

    For windows users, re-run the installer. Select Modify. Check the box for tcl/tk and IDLE. The description for this says "Installs tkinter"

    0 讨论(0)
  • 2020-11-28 04:13

    Maybe you installed python from source. In this case, you can recompile python with tcl/tk supported.

    1. Complie and install tcl/tk from http://www.tcl.tk/software/tcltk/download.html, I'll suppose you installed python at /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. Recompile python with tcl/tk supported, for example:
    # 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 讨论(0)
  • 2020-11-28 04:14

    On Ubuntu, early 2018, there is no python3.6-tk on ubuntu's (xenial/16.04) normal distributions, so even if you have earlier versions of python-tk this won't work.

    My solution was to use set everything up with 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
    

    And now matplotlib can find tkinter.

    EDIT:

    I just needed 3.6 afterall, and the trick was to:

    sudo apt install tk-dev
    

    and then rebuild python3.6, after tk-dev, eg:

    ./configure
    make
    make install
    
    0 讨论(0)
  • 2020-11-28 04:17

    Almost all answers I searched for this issue say that Python on Windows comes with tkinter and tcl already installed, and I had no luck trying to download or install them using pip, or actviestate.com site. I eventually found that when I was installing python using the binary installer, I had unchecked the module related to TCL and tkinter. So, I ran the binary installer again and chose to modify my python version by this time selecting this option. No need to do anything manually then. If you go to your python terminal, then the following commands should show you version of tkinter installed with your Python:

    import tkinter
    import _tkinter
    tkinter._test()
    
    0 讨论(0)
  • 2020-11-28 04:21

    For the poor guys like me using python 3.7. You need the python3.7-tk package.

    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()
    

    Note. python3-tk is installed. But not 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) ...
    

    After installing it, all good.

    $ 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()
    
    0 讨论(0)
  • 2020-11-28 04:21

    On CentOS 6.5 with python 2.7 I needed to do: yum install python27-tkinter

    0 讨论(0)
提交回复
热议问题