用Python MatPlotlib制作多边形

用Python MatPlotlib制作多边形,python,matplotlib,polygon,Python,Matplotlib,Polygon,我试着用这段代码制作一个多边形,但它显示了我对多边形的兴趣。我需要一个多边形 import matplotlib.pyplot as plt x = [4, 1, 2] y = [1, 2, 1] z = [0, 2, 1] plt.fill(x, y, z) plt.show() 如果运行此代码,它将以两种颜色打印两个多边形。我只需要一个多边形,只有一种颜色。谁能帮我解决这个问题 谢谢只需将多边形的颜色设置为相同即可: import matplotlib.pyplot as plt x

我试着用这段代码制作一个多边形,但它显示了我对多边形的兴趣。我需要一个多边形

import matplotlib.pyplot as plt

x = [4, 1, 2]
y = [1, 2, 1]
z = [0, 2, 1]

plt.fill(x, y, z)
plt.show()
如果运行此代码,它将以两种颜色打印两个多边形。我只需要一个多边形,只有一种颜色。谁能帮我解决这个问题


谢谢

只需将多边形的颜色设置为相同即可:

import matplotlib.pyplot as plt

x = [4, 1, 2]
y = [1, 2, 1]
z = [0, 2, 1]

plt.fill(x, y, z, c='C0')
plt.show()
我不完全确定前面的代码为什么会这样工作。plt.fill用于绘制二维多边形,第三个参数应该是颜色,因此您真正应该写的是:

x = [4, 1, 0, 2]
y = [1, 2, 0, 1]

plt.fill(x, y, c='C0')
plt.show()
这给出了相同的情节


plt.fillx,y,z与调用plt.fillx,y相同;plt.fillz。事实上,你可以根据自己的喜好绘制任意多个填充形状,不过为了更好的可读性,我建议总是定义x和y,比如plt.fillx1,y1,x2,y2,x3,y3。谢谢你的澄清!