Python 中的 matplotlib.pyplot.fill_better()
原文:https://www.geeksforgeeks.org/matplotlib-pyplot-fill_in-python/
Matplotlib 是 Python 中一个惊人的可视化库,用于数组的 2D 图。Matplotlib 是一个多平台数据可视化库,构建在 NumPy 数组上,旨在与更广泛的 SciPy 堆栈一起工作。
matplotlib.pyplot.fill_between()
matplotlib.pyplot.fill_between()用于填充两条水平曲线之间的区域。两点(x,y1)和(x,y2)定义了曲线。这将创建一个或多个描述填充区域的多边形。“where”参数可用于选择性填充某些区域。默认情况下,边直接连接给定点。如果填充需要阶跃函数,则使用“阶跃”参数。
语法:matplotlib.pyplot.fill_between(x,y1,y2=0,其中=无,步长=无,插值=假,数据=无, * * kwargs)
参数:
- x: 是长度 n 的数组,这些是定义曲线的节点的 y 坐标。
- y1: 它是长度为 N 的数组或标量。这表示定义第一条曲线的节点的 x 坐标。
- y2: 是长度为 N 的数组,本质上是可选的。其默认值为 0。这表示定义第二条曲线的节点的 x 坐标。
- 其中:为长度为 n 的布尔值数组,定义是否需要排除部分垂直区域被填充。需要注意的是,这个定义意味着两个假值之间的一个孤立的真值不会被填充。相邻的假值不会填充真值的两边。
- 插值:是接受布尔值的可选参数。仅当使用了 where 并且两条曲线相互交叉时才相关。语义上,如果一般用于 y1 > y2 或类似的情况。默认情况下,填充区域将放置在定义填充多边形区域的 x 阵列位置。x 中有交点的部分被简单地裁剪掉。将此参数设置为“真”将导致实际交点的计算,并延伸到填充区域直至点。
- 步骤:这是一个可选参数,接受三个值中的一个,即‘pre’、‘post’和‘mid’。这用于指定步骤将在哪里发生。
- pre: 从每个 y 位置开始,x 值持续向左,即区间(x[i-1],x[i])的值为 y[i]。
- post: 从每个 y 位置开始,x 值不断向右延续,即区间(x[i],x[i+1])的值为 y[i]。
- 中间:这些步骤发生在 x 位置的中间。
返回:从多边形集合中返回一个绘制的多边形。
其他参数: **kwargs 包含来自控制多边形属性的 PolyCollection 的关键字;
财产 | 描述 |
---|---|
agg_筛选器 | 接受(m,n,3)浮点数组和返回(m,n,3)数组的 dpi 值的筛选函数 |
希腊字母的第一个字母 | 浮动或无 |
愉快的 | 弯曲件 |
排列 | ndaarray(阵列) |
帽式 | { '对接','圆形','突出' } |
cmap | 彩色地图或注册彩色地图 |
抗锯齿或 aa 或抗锯齿 | 布尔或布尔序列 |
剪辑盒 | Bbox |
剪辑 _on | 弯曲件 |
剪辑路径 | [(路径,转换)|补丁|无] |
颜色 | rgba 元组的颜色或序列 |
包含 | 请求即付的 |
edgecolor 或 ec 或 edgecolors | 颜色或颜色序列或“脸” |
facecolor 或 fc 或 facecolors | 颜色或颜色序列 |
数字 | 数字 |
眩倒病 | 潜艇用热中子反应堆(submarine thermal reactor 的缩写) |
舱口 | {'/',' \ ',' | ','-','+',' x ',' O ',' O ',' ', '*'} |
in_布局 | 弯曲件 |
连接样式 | { '斜接','圆形','斜角' } |
线型或短划线 | {'-', '–', '-.',':',",(偏移量,开-关-序列),…} |
线宽 | 浮动或浮动序列 |
标准 | 使标准化 |
偏移位置 | {“屏幕”、“数据”} |
抵消 | 浮动或浮动序列 |
路径效果 | 抽象路径效应 |
采摘者 | 无、布尔、浮点或可调用 |
拾取半径 | 未知的 |
路径效果 | 抽象路径效应 |
采摘者 | 浮动或可调用[[艺术家,事件],元组[布尔,字典]] |
拾取半径 | 漂浮物 |
光栅化 | 布尔或无 |
草图_参数 | (比例:浮动,长度:浮动,随机性:浮动) |
突然的 | 布尔或无 |
改变 | matplotlib.transforms.transform |
全球资源定位器(Uniform Resource Locator) | 潜艇用热中子反应堆(submarine thermal reactor 的缩写) |
资源定位符 | 列表[字符串]或无 |
看得见的 | 弯曲件 |
xdata | 1D 阵列 |
更糟 | 漂浮物 |
例 1:
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(0,10,0.1)
# plotting the lines
a1 = 4 - 2*x
a2 = 3 - 0.5*x
a3 = 1 -x
# The upper edge of
# polygon
a4 = np.minimum(a1, a2)
# Setting the y-limit
plt.ylim(0, 5)
# Plot the lines
plt.plot(x, a1,
x, a2,
x, a3)
# Filling between line a3
# and line a4
plt.fill_between(x, a3, a4, color='green',
alpha=0.5)
plt.show()
输出:
例 2:
import matplotlib.pyplot as plt
import numpy as np
a = np.linspace(0,2*3.14,50)
b = np.sin(a)
plt.fill_between(a, b, 0,
where = (a > 2) & (a <= 3),
color = 'g')
plt.plot(a,b)
输出: