1 Star 0 Fork 0

v_wanglei/manim

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
perf_scenes.py 2.63 KB
一键复制 编辑 原始数据 按行查看 历史
from manimlib.imports import *
"""
A set of scenes to be used for performance testing of Manim.
"""
class Perf1(GraphScene):
"""
A simple scene of two animations from the end of a video on recursion.
- Uses a graph in 1/4 of the scene.
- First fades in multiple lines of text and equations, and the graph axes.
- Next animates creation of two graphs and the creation of their text
labels.
"""
CONFIG = {
"x_axis_label":
"$n$",
"y_axis_label":
"$time$",
"x_axis_width":
FRAME_HEIGHT,
"y_axis_height":
FRAME_HEIGHT / 2,
"y_max":
50,
"y_min":
0,
"x_max":
100,
"x_min":
0,
"x_labeled_nums": [50, 100],
"y_labeled_nums":
range(0, 51, 10),
"y_tick_frequency":
10,
"x_tick_frequency":
10,
"axes_color":
BLUE,
"graph_origin":
np.array(
(-FRAME_X_RADIUS + LARGE_BUFF, -FRAME_Y_RADIUS + LARGE_BUFF, 0))
}
def construct(self):
t1 = TextMobject(
"Dividing a problem in half over and over means\\\\"
"the work done is proportional to $\\log_2{n}$").to_edge(UP)
t2 = TextMobject(
'\\textit{This is one of our\\\\favorite things to do in CS!}')
t2.to_edge(RIGHT)
t3 = TextMobject(
'The new \\texttt{power(x,n)} is \\underline{much}\\\\better than the old!'
)
t3.scale(0.8)
p1f = TexMobject('x^n=x \\times x^{n-1}').set_color(ORANGE)
t4 = TextMobject('\\textit{vs.}').scale(0.8)
p2f = TexMobject(
'x^n=x^{\\frac{n}{2}} \\times x^{\\frac{n}{2}}').set_color(GREEN)
p1v2g = VGroup(t3, p1f, t4, p2f).arrange(DOWN).center().to_edge(RIGHT)
self.setup_axes()
o_n = self.get_graph(lambda x: x, color=ORANGE, x_min=1, x_max=50)
o_log2n = self.get_graph(lambda x: math.log2(x),
color=GREEN,
x_min=2,
x_max=90)
onl = TexMobject('O(n)')
olog2nl = TexMobject('O(\\log_2{n})')
onl.next_to(o_n.get_point_from_function(0.6), UL)
olog2nl.next_to(o_log2n.get_point_from_function(0.8), UP)
self.play(
FadeIn(t1),
FadeIn(self.axes),
# FadeInFromDown(t2),
FadeIn(p1v2g),
)
self.play(ShowCreation(o_n),
ShowCreation(o_log2n),
ShowCreation(onl),
ShowCreation(olog2nl),
run_time=3)
self.wait(duration=5)
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/v_wanglei/manim.git
git@gitee.com:v_wanglei/manim.git
v_wanglei
manim
manim
master

搜索帮助

0d507c66 1850385 C8b1a773 1850385