如何在 Jupyter 笔记本上并排显示 YouTube 视频和 matplotlib 绘图?

How to display a YouTube video and matplotlib plot side by side on Jupyter notebook?

我正在使用 Ipython 编写交互式 Jupyter notebook,我想并排显示 YouTube 视频和 matplotlib 图。 每个本身都正确显示,但当我尝试在 HBox 中显示它们时,它们一个一个地显示在另一个下方,而不是水平地彼此相邻。我试着缩小它们,但行为没有改变。 这是从 kapernikov.com

找到的另一个例子
import ipywidgets as widgets
from IPython.display import display
import numpy as np
import matplotlib.pyplot as plt


SalidaEjes = widgets.Output()

x = np.linspace(0, 2 * np.pi, 100)

with SalidaEjes:
    fig, ax = plt.subplots(figsize=(3, 2))
    line, = ax.plot(x, np.sin(x))

from IPython.display import YouTubeVideo

SalidaVideo = widgets.Output()

with SalidaVideo:
    display(YouTubeVideo('RdMj0iMCYfE', width=200, height=200))

Salidas = widgets.HBox([SalidaEjes, SalidaVideo])
display(Salidas)

我想我犯了一个明显的错误,但我不知道在哪里。 任何帮助表示赞赏! 最好的问候。

您看到的是左侧 SalidaEjes 为空的 HBox 显示,然后是下方自动生成的图(因此 HBox 工作正常!)。您需要在 SalidaEjes 上下文中显示绘图,以便它不会附加在 HBox 之后并显示在 HBox/SalidaEjes:

with SalidaEjes:
    x = np.linspace(0, 2 * np.pi, 100)
    fig, ax = plt.subplots(figsize=(3, 2));
    line, = ax.plot(x, np.sin(x))
    plt.show(fig)  # <-- here

这与 有关。