问题描述
我正在Windows 10上使用Powershell跟踪有关Newcoder.io的数据可视化教程,并且在运行应返回.png文件的python脚本时遇到了麻烦。 似乎找不到Tcl文件
c:/python27/lib/tcl8.5
它的实际位置是
C:\Python27\tcl\tcl8.5
我该如何解决这个问题?
以下是尝试运行程序时收到的错误消息的副本。
(datavizproj)PS C:\Users\Director UYE\Projects\new-coder\dataviz\MySourceFiles> python graph.p
y
Traceback (most recent call last):
File "graph.py", line 89, in <module>
main()
File "graph.py", line 84, in main
visualize_days()
File "graph.py", line 67, in visualize_days
plt.plot(data_list)
File "C:\Users\Director UYE\.virtualenvs\datavizproj\lib\site-packages\matplotlib\pyplot.py", line 3092, in plot
ax = gca()
File "C:\Users\Director UYE\.virtualenvs\datavizproj\lib\site-packages\matplotlib\pyplot.py", line 828, in gca
ax = gcf().gca(**kwargs)
File "C:\Users\Director UYE\.virtualenvs\datavizproj\lib\site-packages\matplotlib\pyplot.py", line 462, in gcf
return figure()
File "C:\Users\Director UYE\.virtualenvs\datavizproj\lib\site-packages\matplotlib\pyplot.py", line 435, in figure
**kwargs)
File "C:\Users\Director UYE\.virtualenvs\datavizproj\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 81, in new_figure_manager
return new_figure_manager_given_figure(num, figure)
File "C:\Users\Director UYE\.virtualenvs\datavizproj\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 89, in new_figure_manager_given_figure
window = Tk.Tk()
File "c:\python27\Lib\lib-tk\Tkinter.py", line 1814, 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:/python27/lib/tcl8.5 {C:/Users/Director UYE/.virtualenvs/datavizproj/lib/tcl8.5} {C:/Users/Director UYE/.virtualenvs/lib/tcl8.5} {C:/Users/Director UYE/.virtualenvs/datavizproj/library} {C:/Users/Director UYE/.virtualenvs/library} {C:/Users/Director UYE/.virtualenvs/tcl8.5.15/library} {C:/Users/Director UYE/tcl8.5.15/library}
This probably means that Tcl wasn't installed properly.
1楼
您可以将环境变量TCL_LIBRARY和TK_LIBRARY设置为指向正确的目录,它应该可以工作。
通常,这些参数是从传递给Tcl初始化例程的参数的位置派生的,该例程通常是dll或exe。
参见