[英]Why is %pylab not starting pylab mode?
所以我只是试图通过从 LibreOffice Calc 表中读取它们并通过最新 Ubuntu 版本中的终端运行 Python 来绘制一个变量图作为另一个变量的函数。 这是我的简短test.py
文件:
%pylab
# import mesa_reader
import mesa_reader as mr
# load and plot data
h = mr.MesaData('LOGS/history.data')
plot(h.log_Teff, h.log_L)
# set axis labels
xlabel('log Effective Temperature')
ylabel('log Luminosity')
# invert the x-axis
plt.gca().invert_xaxis()
问题是,当我输入python3 test.py
时终端给出了以下问题
File "test.py", line 2
%pylab
^
SyntaxError: invalid syntax
有人可以告诉我我的问题可能在这里吗?
编辑:这是新代码
# start pylab mode
# %pylab
import matplotlib.pyplot as plt
# import mesa_reader
import mesa_reader as mr
# load and plot data
h = mr.MesaData('LOGS/history.data')
plt.plot(h.log_Teff, h.log_L)
# set axis labels
plt.xlabel('log Effective Temperature')
plt.ylabel('log Luminosity')
# invert the x-axis
plt.gca().invert_xaxis()
但是,我收到以下错误
Traceback (most recent call last):
File "test.py", line 3, in <module>
import matplotlib.pyplot as plt
ImportError: No module named matplotlib.pyplot
编辑2:这是代码+错误
import matplotlib.pyplot as plt
import mesa_reader as mr
# load and plot data
h = mr.MesaData('LOGS/history.data')
plt.plot(h.log_Teff, h.log_L)
# set axis labels
plt.gca().xlabel('log Effective Temperature')
plt.gca().ylabel('log Luminosity')
# invert the x-axis
plt.gca().invert_xaxis()
Traceback (most recent call last):
File "test.py", line 1, in <module>
import matplotlib.pyplot as plt
File "/home/nick/.local/lib/python2.7/site-packages/matplotlib/pyplot.py", line 115, in <module>
_backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
File "/home/nick/.local/lib/python2.7/site-packages/matplotlib/backends/__init__.py", line 63, in pylab_setup
[backend_name], 0)
File "/home/nick/.local/lib/python2.7/site-packages/matplotlib/backends/backend_tkagg.py", line 4, in <module>
from . import tkagg # Paint image to Tk photo blitter extension.
File "/home/nick/.local/lib/python2.7/site-packages/matplotlib/backends/tkagg.py", line 5, in <module>
from six.moves import tkinter as Tk
File "/usr/lib/python2.7/dist-packages/six.py", line 203, in load_module
mod = mod._resolve()
File "/usr/lib/python2.7/dist-packages/six.py", line 115, in _resolve
return _import_module(self.mod)
File "/usr/lib/python2.7/dist-packages/six.py", line 82, in _import_module
__import__(name)
File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 42, in <module>
raise ImportError, str(msg) + ', please install the python-tk package'
ImportError: No module named _tkinter, please install the python-tk package
%pylab
只是一个 ipython 魔术命令: https ://ipython.readthedocs.io/en/stable/interactive/magics.html#magic-pylab
要完成这项工作,您必须稍微重写您的代码:
import matplotlib.pyplot as plt
import mesa_reader as mr
# load and plot data
h = mr.MesaData('LOGS/history.data')
plt.plot(h.log_Teff, h.log_L)
# set axis labels
plt.xlabel('log Effective Temperature')
plt.ylabel('log Luminosity')
# invert the x-axis
plt.gca().invert_xaxis()
要保存文件,您可以执行以下操作:
plt.savefig('my_plot.png')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.