Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在matplotlib中使用'fill_'进行可变长度着色`_Python_Python 3.x_Matplotlib_Plot_Shading - Fatal编程技术网

Python 在matplotlib中使用'fill_'进行可变长度着色`

Python 在matplotlib中使用'fill_'进行可变长度着色`,python,python-3.x,matplotlib,plot,shading,Python,Python 3.x,Matplotlib,Plot,Shading,我正在尝试为绘图生成可变长度的着色。现在,我只有固定长度的阴影从实际线 a = np.linspace(1, 10) loga = np.log(a) _, ax = plt.subplots() ax.plot(a, loga, lw=3, color='#27AE60', alpha=1) ax.fill_between(a, loga+0.2, loga-0.2, color='#539caf', alpha=0.1) ax.set_title("log plot") plt.

我正在尝试为绘图生成可变长度的着色。现在,我只有固定长度的阴影从实际线

a    = np.linspace(1, 10)
loga = np.log(a)

_, ax = plt.subplots()

ax.plot(a, loga, lw=3, color='#27AE60', alpha=1)
ax.fill_between(a, loga+0.2, loga-0.2, color='#539caf', alpha=0.1)

ax.set_title("log plot")
plt.legend(["natural log"], loc="upper left")
相应的图为:

然而,我想得到一个如下图所示的图


如何修改代码以生成这种可变长度着色?我的意思是,当我们从左向右移动时,线条后面的阴影区域应该增加(即,随着x轴中的值增加)。如果有任何帮助,我将不胜感激。圣诞快乐

答案非常明显。之间的
fill_的参数是填充区域上边缘的x值、y值和下边缘的值。修改这两个选项将更改着色区域:

import matplotlib.pyplot as plt
import numpy as np

a    = np.linspace(1, 10)
loga = np.log(a)

_, ax = plt.subplots()

ax.plot(a, loga, lw=3, color='#27AE60', alpha=1)
ax.fill_between(a, loga+np.linspace(0,1,a.size), loga-np.linspace(0,1,a.size), color='#539caf', alpha=0.1)

ax.set_title("log plot")
plt.legend(["natural log"], loc="upper left")

plt.show()
plt.savefig('so.png')

现在,关于如何定义这些界限。。。当然,这取决于您希望这些行具有的含义(即您的数据)。这是一个具体的问题,你没有提到。(而且可能不是关于编程,所以是非现场的)