如何在标准图中直接使用 matplotlib 中的 Axes3D 以避免 flake8 错误
How to directly use Axes3D from matplotlib in standard plot to avoid flake8 error
像这样使用典型的 3D 图时:
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.gca(projection='3d')
flake8
报告预期错误:
./tools.py:62:9: F401 'mpl_toolkits.mplot3d.Axes3D' imported but unused
我知道可以使用 # NOQA
评论来避免。但是有没有不同的方法来制定图中的投影,以便使用 Axes3D 对象?
如果这只是关于实际至少使用一次导入,你可以这样做
ax = fig.gca(projection=Axes3D.name)
因为 "3d"
是 Axes3D
class 的名称,通过它注册到投影列表。
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
fig = plt.figure()
ax = Axes3D(fig)
但是,如果我对 documentation 理解得很好,那么从 1.0.0 版开始它就不再是首选方式了。为了完整起见,我仍然提到它。
像这样使用典型的 3D 图时:
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.gca(projection='3d')
flake8
报告预期错误:
./tools.py:62:9: F401 'mpl_toolkits.mplot3d.Axes3D' imported but unused
我知道可以使用 # NOQA
评论来避免。但是有没有不同的方法来制定图中的投影,以便使用 Axes3D 对象?
如果这只是关于实际至少使用一次导入,你可以这样做
ax = fig.gca(projection=Axes3D.name)
因为 "3d"
是 Axes3D
class 的名称,通过它注册到投影列表。
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
fig = plt.figure()
ax = Axes3D(fig)
但是,如果我对 documentation 理解得很好,那么从 1.0.0 版开始它就不再是首选方式了。为了完整起见,我仍然提到它。