【问题标题】:Maplotlib gives the list of array outputs before showing the scatter plot in Python 3Matplotlib 在 Python 3 中显示散点图之前给出了数组输出列表
【发布时间】:2018-06-25 18:43:58
【问题描述】:

在使用 Python 2.7 之前,我制作了一些图,一切都很好。现在我试图在 Python 3 中使用它,因为我试图可视化我正在处理的项目的一些数据输出。所以我试着看看这是否有效:

%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt

# fake data:
a = np.random.normal(size=1000)
b = a*3 + np.random.normal(size=1000)

plt.hist2d(a, b, (50, 50), cmap=plt.cm.jet)
plt.colorbar()

结果让我很困惑:它显示了情节,但在情节之前它还显示了a和b的值列表,如下图所示:

我只需要一张干净的绘图图。那么我在这里做错了什么?好久没用matplotlib了,估计这里犯了大错。

提前感谢您的宝贵时间。

【问题讨论】:

  • 这里的一个提示是在情节线的末尾添加一个分号 (;)。这将抑制 jupyter notebook 中的文本输出。
  • 该死,我试图添加;到每个plt。线。显然它只有在我添加另一行时才有效:plt.show()。这很棒。非常感谢。正是我需要的。

标签: python matplotlib


【解决方案1】:

我不是专家,但结果是你得到了构成你的情节的变量。我已经将它运行到Spyder 并且在右侧(变量部分)我也得到了你的结果。但是,您需要做的是明确编写“显示情节”:

....
plt.colorbar
plt.show()

这将在新窗口中自动绘制您的绘图,而不显示所有数组。这里有一些解释Previous post

【讨论】:

  • 感谢您的回复。我正在使用 Jupyter 笔记本。我在末尾添加了“plt.show()”,但输出仍然相同。
  • 如果您尝试%%capture 会怎样
  • 不知何故这没有什么区别,但是在您的第一个链接的评论中提到的分号方法有效。我只是把;在“plt.show()”的末尾,它起作用了。谢谢。
  • 完美,就这样吧。
猜你喜欢
  • 2016-11-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-03
  • 2016-12-29
  • 1970-01-01
  • 1970-01-01
  • 2020-12-30
相关资源
最近更新 更多