我正在绘制多个对象,均由多条直线组成。为此,我使用了一个颜色列表,并为每个对象分配了一个颜色。所需的结果如下所示: 我正在使用 command 执行此操作,提供起点和终点以及颜色。
plt.plot
在试图得到这个结果时,我犯了一个错误'pink'
,我提供了像(0, 0.75, 0)
.
这导致了这个:
为什么 matplotlib 会这样?我想了解为什么每个段都有自己的颜色,似乎是随机选择的,而我总是提供相同的错误输入。
当没有传递正确的输入值时,我无法找到行为的文档。如果有文档,如果 matplotlib 实际上每次只是随机选择,相关部分的引用就已经构成了答案。
当我传递False而不是颜色时会发生相同的行为。
MCVE :
import matplotlib.pyplot as plt
# Line in black
plt.plot([-1,-1], [-1,1], 'k')
# Line in bad color
plt.plot([0,0],[-1,1], False)
# Line in same bad color
plt.plot([1,1],[-1,1], False)
# Line in other bad color
plt.plot([2,2],[-1,1], (0,0.75,0))
# Line in same other bad color
plt.plot([3,3],[-1,1], (0,0.75,0))
plt.show()
注意:
我不是在寻找如何通过传递恒定颜色来获得我想要的结果。我做到了。但是在去那里的路上,我遇到了这种行为,我想了解一下。
根据评论,pyplot 中似乎有一些已记录且众所周知的功能,它们仅使用颜色循环并在未提供有效颜色时采用其中的下一种颜色。不过,我无法找到相关文档,所以我想要一些文档引用,或者这是未记录行为的答案,或者类似的东西。
还值得指出的是,当我使用无效的颜色参数时,图像中间的某些东西也会被绘制,但在使用正确的值时不会。为什么?
相关分类