问题描述
我对编码非常陌生,主要是尝试自己学习。我开始学习manim的基础知识,但是在进行故障排除时仍然遇到困难。我一直在试图画出tikz图,并且花了数小时来研究类似的问题。我终于得到它绘制了图表,但是都弄糟了,我无法在线找到任何解决方案。
我正在尝试制作树形图。看起来应该是这样的(来自LaTeX):
我输入的代码是:
from manimlib.imports import *
class TikzMobject(TextMobject):
CONfig = {
"stroke_width": 3,"fill_opacity": 0,"stroke_opacity": 1,}
class Tree(Scene):
def construct(self):
TreeDiagram = TikzMobject(r"""
\begin{tikzpicture}[level distance=5em,level 1/.style={sibling distance=5cm},level 2/.style={sibling distance=2.5cm},level 3/.style={sibling distance=1cm},every node/.style={shape=rectangle,rounded corners,draw,align=center}]]
\node {Start}
child { node {$s_1$}
child { node {$p_1$}
child { node{$f_1$}}
child { node{$f_2$}}}
child { node {$p_2$}
child { node{$f_1$}}
child { node{$f_2$}}}}
child { node {$s_2$}
child { node {$p_1$}
child { node {$f_1$}}
child { node {$f_2$}}}
child { node {$p_2$}
child { node {$f_1$}}
child { node {$f_2$}}}}
child { node {$s_3$}
child { node {$p_1$}
child { node {$f_1$}}
child { node {$f_2$}}}
child { node {$p_2$}
child { node {$f_1$}}
child { node {$f_2$}}}};
\end{tikzpicture}
""")
TreeDiagram.scale(0.3)
TreeDiagram.rotate(TAU/2)
self.play(FadeIn(TreeDiagram))
但是它产生的是这样的:
请帮助!非常感谢!
解决方法
那是因为Manim从SVG中删除了样式(manim将.tex文件编译为dvi,然后将dvi转换为svg),所以您不能依赖Manim的LaTeX样式,您必须手工完成或自己创建一个课程。