猿问

为什么 matplotlib 用这么多颜色为我的绘图着色?

我正在绘制多个对象,均由多条直线组成。为此,我使用了一个颜色列表,并为每个对象分配了一个颜色。所需的结果如下所示: 我正在使用 command 执行此操作,提供起点和终点以及颜色。

plt.plot

在试图得到这个结果时,我犯了一个错误'pink',我提供了像(0, 0.75, 0).
这导致了这个:

http://img4.mukewang.com/610bb6fb00014bce05670435.jpg

为什么 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()

http://img.mukewang.com/610bb70800010d9005770414.jpg

注意:
我不是在寻找如何通过传递恒定颜色来获得我想要的结果。我做到了。但是在去那里的路上,我遇到了这种行为,我想了解一下。
根据评论,pyplot 中似乎有一些已记录且众所周知的功能,它们仅使用颜色循环并在未提供有效颜色时采用其中的下一种颜色。不过,我无法找到相关文档,所以我想要一些文档引用,或者这是未记录行为的答案,或者类似的东西。

还值得指出的是,当我使用无效的颜色参数时,图像中间的某些东西也会被绘制,但在使用正确的值时不会。为什么?


jeck猫
浏览 268回答 2
2回答
随时随地看视频慕课网APP

相关分类

Python
我要回答