Matplotlib是Python中令人惊叹的可视化库,用于二维阵列图。 Matplotlib是一个基于NumPy数组的多平台数据可视化库,旨在与更广泛的SciPy堆栈配合使用。
matplotlib.pyplot.fill_betweenx()
matplotlib.pyplot.fill_betweenx()用于填充两条垂直曲线之间的区域。两个点(x1,y)和(x2,y)定义了曲线。这样会创建一个或多个描述填充区域的多边形。 “ where”参数可用于有选择地填充某些区域。默认情况下,边直接连接给定点。如果填充需要是步进函数,则使用“ step”参数。
用法: matplotlib.pyplot.fill_betweenx(y, x1, x2=0, where=None, step=None, interpolate=False, *, data=None, **kwargs)
参数:
- y:它是长度为N的数组。这是定义曲线的节点的y坐标。
- x1:它是长度为N或标量的数组。这表示定义第一条曲线的节点的x坐标。
- x2:它是长度为N的数组,实际上是可选的。它的默认值为0。这表示定义第二条曲线的节点的x坐标。
- where:它是长度为N的布尔值的数组。定义是否需要排除某些垂直区域以使其不被填充。重要的是要注意,此定义意味着两个虚假值之间的孤立真实值将不会执行填充。相邻的False值导致未填充True值的两侧。
- interpolate:它是一个可选参数,它接受布尔值。仅当在何处使用并且两条曲线彼此交叉时才有意义。语义上通常用于x1> x2或类似情况。默认情况下,填充区域将放置在y-array位置,以定义填充的多边形区域。 y的具有相交的部分被简单地裁剪。将此参数设置为True会计算出实际的相交点,并扩展到填充区域,直到该点为止。
- step:这是一个可选参数,它接受三个值之一,即“ pre”,“ post”和“ mid”。这用于指定步骤将在何处发生。
- pre:从每个x位置开始,y值一直持续向左连续,即,间隔(x [i-1],x [i])的值为y [i]。
- post:从每个x位置开始,y值一直持续向右连续,即,间隔(x [i],x [i + 1])的值为y [i]。
- mid:在x位置之间的中间位置发生这些步骤。
返回值:它从PolyCollection返回绘制的多边形。
其他参数:** kwargs包含来自PolyCollection的控制多边形属性的关键字;
属性 | 描述 |
---|---|
agg_filter | 一个过滤器函数,它使用一个(m,n,3)浮点数组和一个dpi值来返回一个(m,n,3)数组 |
alpha | 浮点数或无 |
animated | bool |
array | ndarray |
capstyle | {“对接”,“圆形”,“投影”} | clim | 长度为2的浮点序列;在具有vmin和vmax kwargs的方法中可能会被覆盖。 |
cmap | 颜色图或注册的颜色图 |
antialiased or aa or antialiaseds | 布尔或布尔序列 |
clip_box | Bbox |
clip_on | bool |
clip_path | [(Path,Transform)|补丁|无] |
color | rgba元组的颜色或顺序 |
contains | callable |
edgecolor or ec or edgecolors | 颜色或颜色序列或“脸部” |
facecolor or fc or facecolors | 颜色或颜色顺序 |
figure | figure |
gid | str |
hatch | {“ /”、“\”、“|”、“-”、“+”、“x”、“o”、“O”、“.”、“*”} |
in_layout | bool |
joinstyle | {'miter','round','bevel'} |
linestyle or ls or linestyles or dashes | {“-”,“-”,“-。”,“:”,“,(偏移量,on-off-seq),...} |
linewidth or linewidths or lw | 浮点数或浮点数序列 |
norm | Normalize |
offset_position | {“屏幕”,“数据”} |
offsets | 浮点数或浮点数序列 |
path_effects | AbstractPathEffect |
picker | 无或布尔或浮点数或可赎回 |
pickradius | unknown |
path_effects | AbstractPathEffect |
picker | float或callable [[Artist,Event],Tuple [bool,dict]] |
pickradius | float |
rasterized | 布尔还是无 |
sketch_params | (比例:浮点数,长度:浮点数,随机性:浮点数) |
snap | 布尔还是无 |
transform | matplotlib.transforms.Transform |
url | str |
urls | 列出[str]或无 |
visible | bool |
xdata | 一维阵列 |
zorder | float |
范例1:
import matplotlib.pyplot as plt
import numpy as np
a = np.linspace(0,2*3.14,50)
b = np.sin(a)
plt.fill_betweenx(a, b, 0,
where = (a > -0.5) & (a <= 1),
color='g')
plt.plot(a, b)
输出:
范例2:
import pylab as plt
import numpy as np
N = np.linspace(0,3,200)
A1 = N**2 + 3
A2 = np.exp(N) + 2
A3 = np.cos(N)
plt.plot(N, A1, lw = 3)
plt.plot(N, A2, lw = 3)
plt.plot(N, A3, lw = 3)
plt.fill_betweenx(N, A1, A2,
color = 'r',
alpha = .5)
plt.fill_betweenx(N, A1, A3,
color = 'g',
alpha = .5)
plt.show()
外出:
相关用法
注:本文由纯净天空筛选整理自RajuKumar19大神的英文原创作品 Matplotlib.pyplot.fill_betweenx() in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。