0

您好,我正在尝试查看 Python 中的绘图练习图。我在带有 Jupyter 扩展的 Visual Studio Code 中,当我运行此代码时:

import matplotlib.pyplot as plt
import numpy as np

%matplotlib notebook

#generate 4 random variables from the random, gamma, exponential, and uniform distributions

x1 = np.random.normal(-2.5, 1, 10000)
x2 = np.random.gamma(2, 1.5, 10000)
x3 = np.random.exponential(2, 10000)+7
x4 = np.random.uniform(14,20, 10000)

#plot the histograms

plt.figure(figsize=(9,3))
plt.hist(x1, density=True, bins=20, alpha=0.5)
plt.hist(x2, density=True, bins=20, alpha=0.5)
plt.hist(x3, density=True, bins=20, alpha=0.5)
plt.hist(x4, density=True, bins=20, alpha=0.5);
plt.axis([-7,21,0,0.6])

plt.text(x1.mean()-1.5, 0.5, 'x1\nNormal')
plt.text(x2.mean()-1.5, 0.5, 'x2\nGamma')
plt.text(x3.mean()-1.5, 0.5, 'x3\nExponential')
plt.text(x4.mean()-1.5, 0.5, 'x4\nUniform')

输出是

"<IPython.core.display.Javascript object>
<IPython.core.display.HTML object>
Text(15.512406857944477, 0.5, 'x4\nUniform')"

我已经看到有相同问题的其他查询,并且它们已解决更改为 Jupyter(我正在使用它)或更改此处的情节:

</> 图标

但是当我按下那里时,唯一弹出的菜单如下:

菜单“选择要渲染当前输出的 mimetype”

任何线索我怎么能解决这个问题?

谢谢!费尔南多。

4

1 回答 1

0

更改%matplotlib notebook%matplotlib inline将使情节显示为输出单元格。要删除不需要的文本输出,请添加plt.show()到单元格的最后一行,以便它知道所需的输出是绘图。单元格应如下所示。

import matplotlib.pyplot as plt
import numpy as np

%matplotlib inline

#generate 4 random variables from the random, gamma, exponential, and uniform distributions

x1 = np.random.normal(-2.5, 1, 10000)
x2 = np.random.gamma(2, 1.5, 10000)
x3 = np.random.exponential(2, 10000)+7
x4 = np.random.uniform(14,20, 10000)

#plot the histograms

plt.figure(figsize=(9,3))
plt.hist(x1, density=True, bins=20, alpha=0.5)
plt.hist(x2, density=True, bins=20, alpha=0.5)
plt.hist(x3, density=True, bins=20, alpha=0.5)
plt.hist(x4, density=True, bins=20, alpha=0.5);
plt.axis([-7,21,0,0.6])

plt.text(x1.mean()-1.5, 0.5, 'x1\nNormal')
plt.text(x2.mean()-1.5, 0.5, 'x2\nGamma')
plt.text(x3.mean()-1.5, 0.5, 'x3\nExponential')
plt.text(x4.mean()-1.5, 0.5, 'x4\nUniform')
plt.show()

于 2022-01-21T16:57:02.320 回答