Manim没有正确绘制tikzpictures

问题描述

我对编码非常陌生,主要是尝试自己学习。我开始学习manim的基础知识,但是在进行故障排除时仍然遇到困难。我一直在试图画出tikz图,并且花了数小时来研究类似的问题。我终于得到它绘制了图表,但是都弄糟了,我无法在线找到任何解决方案。

我正在尝试制作树形图。看起来应该是这样的(来自LaTeX):

enter image description here

我输入的代码是:

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))

但是它产生的是这样的:

enter image description here

请帮助!非常感谢!

解决方法

那是因为Manim从SVG中删除了样式(manim将.tex文件编译为dvi,然后将dvi转换为svg),所以您不能依赖Manim的LaTeX样式,您必须手工完成或自己创建一个课程。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...