Matplotlib - 点不会出现,但线会

Posted

技术标签:

【中文标题】Matplotlib - 点不会出现,但线会【英文标题】:Matplotlib - dots won't show up, but lines will 【发布时间】:2014-11-11 16:44:50 【问题描述】:

我在使用 Matplotlib 时遇到了一个奇怪的问题。

如果我运行以下命令,则不会绘制任何点:

import matplotlib.pyplot as plt
plt.plot(range(10), 'r.')
plt.show()

但是,如果我改为将标记样式更改为 line,则效果很好:

import matplotlib.pyplot as plt
plt.plot(range(10), 'r-')
plt.show()

我正在使用 Macbook,但在运行此代码时,我正在通过 ssh -X 连接到我的 Ubuntu Server VM。我以前从未在其他虚拟机上遇到过这个问题。有什么想法吗?

【问题讨论】:

确实很奇怪。您是否在交互式外壳中工作?图形窗口可以很好地显示在您的显示器上,只是没有点? 提供 MPL 和 Python 版本可能会有所帮助。 Python 版本是 2.7.6,matplotlib 是 1.4.2。我在终端中使用 IPython 工作。图形窗口显示得很好,如果我选择线条样式,(连接的)数据点显示得很好,但是如果我尝试单独绘制点,绘图窗口会显示但点不存在。 你用的是什么后端? 我无法使用 mpl 1.4.2 重现此问题,python 2.7 在 linux 机器上安装了 conda。 【参考方案1】:

这可能与 https://github.com/matplotlib/matplotlib/issues/3711 相关。尝试传递 markeredgecolor 参数,看看是否有帮助?

【讨论】:

以上是关于Matplotlib - 点不会出现,但线会的主要内容,如果未能解决你的问题,请参考以下文章

Matplotlib 传奇不会出现

python用matpiotilb画三维曲面图

在linux里用python(2.7)的matplotlib后,调用 show()之后无法显示图像,不会出现图形窗口。

论述在Python程序中如何导入OpenCV以及matplotlib库中的pyplot

matplotlib图例中文乱码解决

UIBezierPath 未绘制