finished area model 3

This commit is contained in:
Ben Hambrecht 2018-04-20 08:48:28 +02:00
parent aa178628a8
commit 77379c8907

View file

@ -728,7 +728,7 @@ class IllustrateAreaModel1(Scene):
Transform(indep_formula.get_part_by_tex("\cdot"), rearranged_formula[2][8]),
)
rect = SurroundingRectangle(rearranged_formula)
rect = SurroundingRectangle(rearranged_formula, buff = 0.5 * MED_LARGE_BUFF)
self.play(ShowCreation(rect))
@ -863,7 +863,7 @@ class IllustrateAreaModel3(Scene):
def construct(self):
formula = TexMobject("E[X] = \sum_{i=1}^N p_i x_i").move_to(3 * LEFT + UP)
self.add(formula)
self.play(Write(formula))
x_scale = 5.0
@ -904,18 +904,14 @@ class IllustrateAreaModel3(Scene):
group = VGroup(brace, p_label)
braces.add(brace)
p_labels.add(p_label)
self.play(
Write(group)
)
self.play(
LaggedStart(FadeIn,braces),
LaggedStart(FadeIn, p_labels)
)
labels = VGroup()
for (y, bar) in zip(y_values, hist.bars):
label = TexMobject(str(int(y))).scale(0.7).next_to(bar, UP, buff = SMALL_BUFF)
self.play(FadeIn(label))
labels.add(label)
y_average = np.mean(y_values)
averaged_y_values = y_average * np.ones(np.shape(y_values))
@ -923,27 +919,33 @@ class IllustrateAreaModel3(Scene):
mode = "widths",
x_scale = x_scale,
y_scale = y_scale,
x_labels = "none"
x_labels = "none",
y_labels = "none"
).fade(0.2)
ghost_hist = hist.copy().fade(0.8)
labels.fade(0.8)
self.bring_to_back(ghost_hist)
self.play(Transform(hist, averaged_hist))
self.play(Transform(hist, averaged_hist, run_time = 3))
self.wait()
average_label = TexMobject(str(y_average)).scale(0.7).next_to(averaged_hist, UP, SMALL_BUFF)
average_brace = Brace(averaged_hist, RIGHT, buff = 0.1)
average_label = TexMobject(str(y_average)).scale(0.7)
average_label.next_to(average_brace, RIGHT, SMALL_BUFF)
average_group = VGroup(average_brace, average_label)
one_brace = Brace(averaged_hist, DOWN, buff = 0.1)
one_p_label = TexMobject(str(1)).next_to(one_brace, DOWN, buff = SMALL_BUFF).scale(0.7)
one_group = VGroup(one_brace, one_p_label)
self.play(
FadeIn(average_label),
FadeIn(average_group),
Transform(braces, one_brace),
Transform(p_labels, one_p_label),
)
rect = SurroundingRectangle(formula, buff = 0.5 * MED_LARGE_BUFF)
self.play(ShowCreation(rect))