Error messages related to tcl tkinter

Hi, I am trying to run py codes and in both I am getting what seem related error messages. The first code reads:

" " "
import matplotlib.pyplot as plt
import numpy as np

plt.style.use(‘_mpl-gallery’)

# Make data
n = 20
x = np.sin(np.linspace(0, 2np.pi, n))*
y = np.cos(np.linspace(0, 2np.pi, n))*
z = np.linspace(0, 1, n)

# Plot
fig, ax = plt.subplots(subplot_kw={“projection”: “3d”})
ax.stem(x, y, z)

ax.set(xticklabels=[],

  •   yticklabels=[],*
    
  •   zticklabels=[])*
    

plt.show()

" " "

for which I am getting the following message:

“”"

PS C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino> & “c:/Users/auret/Documents/Python Visual Studio Code/Python Arduino/.venv/Scripts/python.exe” “c:/Users/auret/Documents/Python Visual Studio Code/Python Arduino/seaborn2.py”
Traceback (most recent call last):
File “c:\Users\auret\Documents\Python Visual Studio Code\Python Arduino\seaborn2.py”, line 13, in
fig, ax = plt.subplots(subplot_kw={“projection”: “3d”})
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\pyplot.py”, line 1759, in subplots
fig = figure(**fig_kw)
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\pyplot.py”, line 1027, in figure
manager = new_figure_manager(
num, figsize=figsize, dpi=dpi,
facecolor=facecolor, edgecolor=edgecolor, frameon=frameon,
FigureClass=FigureClass, **kwargs)
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\pyplot.py”, line 550, in new_figure_manager
return get_backend_mod().new_figure_manager(*args, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\backend_bases.py”, line 3507, in new_figure_manager
return cls.new_figure_manager_given_figure(num, fig)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\backend_bases.py”, line 3512, in new_figure_manager_given_figure
return cls.FigureCanvas.new_manager(figure, num)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\backend_bases.py”, line 1797, in new_manager
return cls.manager_class.create_with_canvas(cls, figure, num)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\backends_backend_tk.py”, line 483, in create_with_canvas
window = tk.Tk(className=“matplotlib”)
File "C:\Program Files\Python313\Lib\tkinter_init
.py", line 2459, in init
self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_tkinter.TclError: Can’t find a usable init.tcl in the following directories:
{C:/Program Files/Python313/lib/tcl8.6} {C:/Program Files/lib/tcl8.6} C:/lib/tcl8.6 {C:/Program Files/library} C:/library C:/tcl8.6.14/library C:/tcl8.6.14/library

This probably means that Tcl wasn’t installed properly.

“”"

The second code reads :

" " "
import seaborn as sns

import numpy as np

import pandas as pd

import matplotlib.pyplot as plt

# loading of a dataframe from seaborn

tips = sns.load_dataset(“tips”)

g = sns.FacetGrid(tips, col=“time”)

g = sns.FacetGrid(tips, col=“time”)

g.map(sns.histplot, “tip”)

" " "

for which I am getting the following error message, also related to Tkinter Tcl…

“”"
PS C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino> & “c:/Users/auret/Documents/Python Visual Studio Code/Python Arduino/.venv/Scripts/python.exe” “c:/Users/auret/Documents/Python Visual Studio Code/Python Arduino/EDA - Plots data Visualization/w.py”
Traceback (most recent call last):
File “c:\Users\auret\Documents\Python Visual Studio Code\Python Arduino\EDA - Plots data Visualization\w.py”, line 7, in
g = sns.FacetGrid(tips, col=“time”)
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\seaborn\axisgrid.py”, line 453, in init
fig = plt.figure(figsize=figsize)
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\pyplot.py”, line 1027, in figure
manager = new_figure_manager(
num, figsize=figsize, dpi=dpi,
facecolor=facecolor, edgecolor=edgecolor, frameon=frameon,
FigureClass=FigureClass, **kwargs)
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\pyplot.py”, line 550, in new_figure_manager
return get_backend_mod().new_figure_manager(*args, **kwargs)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\backend_bases.py”, line 3507, in new_figure_manager
return cls.new_figure_manager_given_figure(num, fig)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\backend_bases.py”, line 3512, in new_figure_manager_given_figure
return cls.FigureCanvas.new_manager(figure, num)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\backend_bases.py”, line 1797, in new_manager
return cls.manager_class.create_with_canvas(cls, figure, num)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File “C:\Users\auret\Documents\Python Visual Studio Code\Python Arduino.venv\Lib\site-packages\matplotlib\backends_backend_tk.py”, line 483, in create_with_canvas
window = tk.Tk(className=“matplotlib”)
File "C:\Program Files\Python313\Lib\tkinter_init
.py", line 2459, in init
self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_tkinter.TclError: Can’t find a usable init.tcl in the following directories:
{C:/Program Files/Python313/lib/tcl8.6} {C:/Program Files/lib/tcl8.6} C:/lib/tcl8.6 {C:/Program Files/library} C:/library C:/tcl8.6.14/library C:/tcl8.6.14/library

“”"

both error messages relate to tkinter tcl…how can this problem be fixed ? ….thank you

PS: I am working in VS code on a Windows PC…

Hello,

first, when entering code, it helps if you format it per these instructions (it makes it much more legible):

It appears that you incorrectly used quotes instead of back ticks.

Regarding your script, when you enter formulas, you have to enter the required mathematical operators if required. In your case, the multiplication sign (*).

For example, the following is incorrect. There is a missing multiplication sign between the ‘2’ and ‘np’. You also had an extra ‘*’ for no apparent reason at the end of the formula.

x = np.sin(np.linspace(0, 2np.pi, n))*  

The correct format is:

x = np.sin(np.linspace(0, 2*np.pi, n))

Here is your working script:

    import matplotlib.pyplot as plt
    import numpy as np

    plt.style.use('_mpl-gallery')

    # Make data
    n = 20
    x = np.sin(np.linspace(0, 2*np.pi, n))
    y = np.cos(np.linspace(0, 2*np.pi, n))
    z = np.linspace(0, 1, n)

    # Plot
    fig, ax = plt.subplots(subplot_kw={'projection': '3d'})
    ax.stem(x, y, z)

    plt.show()

I will leave it up to you to figure out the axis labels which I did not include in this script.

Looks like there’s a bug in Tcl/Tk in 3.13 when running from a .venv.

1 Like