我正在尝试使用Matplotlib将3D图从TikZ导出到import tikzplotlib。这是在Jupyter NoteBook中执行的代码
from mpl_toolkits import mplot3d
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = plt.axes(projection='3d')
z = np.linspace(0, 1, 100)
x = z * np.sin(20 * z)
y = z * np.cos(20 * z)
ax.plot3D(x, y, z, 'gray')
ax.set_title('Intentando con 3D')
plt.show()
import tikzplotlib
tikzplotlib.save("papon.tex")
tikzplotlib.Flavors.latex.preamble()生成的papon.tex文件在编译时显示如下:
% This file was created by tikzplotlib v0.9.8.
\begin{tikzpicture}
\end{tikzpicture}缺少任何配置或代码修改?或者,简单地说,不可能正确地导出三维图表-with -这些特征-到TikZ
发布于 2021-06-11 06:33:03
这两个问题的答案都是肯定的。
第一个问题是,您在show之后保存图形,这将消耗该绘图,然后保存一个空的新图。当删除以下行时,将导出该绘图:
plt.show()然而,第二个问题是3d图形确实不受支持。请参阅tikzplotlib文档
当然,不是所有由matplotlib生成的图形都可以无错误地转换。值得注意的是3D图不起作用。
上面示例的输出如下所示,tikz输出是一个2d图。因此,没有快速的解决方案可以将其转化为所需的情节:

https://stackoverflow.com/questions/67926612
复制相似问题