我想在曲线下填充彩虹色。实际上matplotlib.pyplot.fill_between函数可以用单一颜色填充曲线下的区域。
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 100, 50)
y = -(x-50)**2 + 2500
plt.plot(x,y)
plt.fill_between(x,y, color='green')
plt.show()
有没有一个旋钮我可以把颜色调成彩虹?谢谢。
我想在曲线下填充彩虹色。实际上matplotlib.pyplot.fill_between函数可以用单一颜色填充曲线下的区域。
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 100, 50)
y = -(x-50)**2 + 2500
plt.plot(x,y)
plt.fill_between(x,y, color='green')
plt.show()
有没有一个旋钮我可以把颜色调成彩虹?谢谢。
3条答案
按热度按时间u4dcyp6a1#
如果你想用一系列矩形“填充”,这是很容易破解的:
您可以通过缩小矩形(即,使用更多点)。此外,您可以使用梯形(甚至插值多项式)来细化“矩形”。
hm2xizp92#
如果你的意思是给“color=”一些聪明的论据,恐怕就我所知,这并不存在。您可以通过为每种颜色设置一条二次线并改变偏移量来手动执行此操作。在它们之间填充正确的颜色会给予rainbowish这是一个有趣的项目来学习一些Python,但如果你不想尝试这里是一个例子:
你会发现,这看起来不像彩虹。这是因为我们使用的函数是二次函数,实际上彩虹是由不同半径的圆组成的(这里还有一个有趣的数学项目!)。这也是可绘制的matplotlib,我会尝试这个,使它,这样你可以绘制超过7种颜色在彩虹eidg图1000颜色跨越整个光谱,使它看起来真的像一个彩虹!
iszxjhcz3#
这里是一个修改后的解决方案,使用梯形而不是矩形。