【发布时间】:2018-02-16 07:19:43
【问题描述】:
我有一个 147637 行和 175 列的多维数组。现在我只想绘制其中一个 column ,即最后一列。除了这 5 行:29528、59051、88583、118110、147636 之外,最后一列的所有行都用 0 填充。这些行的值为 1。 下面是我用来绘制的代码:
import matplotlib.pyplot as plt
workBoundary=-1
fig,(ax1)=plt.subplots(nrows=1,ncols=1)
ax1.plot(allPathsDistance[:,workBoundary],color='maroon')
plt.show()
下面是输出: 注意 x 轴。根据该图,第 0 行和第 60000 行之间没有“1”值。
值“1”的数据点应该出现在大约第 30000 行。(准确地说,第 29528 行)。我无法弄清楚为什么会这样。任何人都可以帮助纠正这个问题吗?我重新启动了 Spyder IDE,但这种行为没有改变。
附加信息:
如果 x 轴范围被编辑为不显示 0,如下所示:
import matplotlib.pyplot as plt
workBoundary=-1
fig,(ax1)=plt.subplots(nrows=1,ncols=1)
ax1.plot(allPathsDistance[:,workBoundary],color='maroon')
ax1.set_xlim(left=10)
plt.show()
这似乎表明 matplotlib 没有在绘图区域的某些位置绘制数据。
版本信息: matplotlib:2.1.0 间谍:3.1.4 Windows 7的 Python:3.6.3
【问题讨论】:
-
这应该不是分辨率问题。但是我在复制问题时遇到了问题;似乎工作和非工作代码是相同的?输出对我来说似乎是正确的:i.stack.imgur.com/VdmOG.png
-
我的错。我在附加信息部分复制的代码缺少一条语句。
-
上图是在没有
set_xlim的情况下生成的,所以它仍然适用。 -
嗯,我无法回答为什么你不能重现这个。但这是我实际面临的代码和问题。我用谷歌搜索了这个现象,但我找不到任何东西,因此在这里发布。
-
一次,创建一个minimal reproducible example,即一段可以从问题中复制并运行的代码。您显示的情节看起来像您在显示这些线条之前做了其他事情。这样可以确保我们在这里谈论的不是同一件事。
标签: python-3.x matplotlib