python画图|多个填充区域

前述已经学习过两条线之间的填充,以下链接可以直达:

python画图|竖向填充两条线之间的区域-CSDN博客

现在尝试同时在横向和竖向进行填。

输入以下代码:

python 复制代码
import matplotlib.pyplot as plt #引入matplotlib模块画图
import numpy as np #引入numpy模块做数学计算

t = np.arange(0.0, 2, 0.01) #定义因变量
s = np.sin(2*np.pi*t) #定义自变量

fig, ax = plt.subplots() #定义画图

ax.plot(t, s, color='black') #画图
ax.axhline(0.5, color='black') #画一条y=0.5的水平线

ax.fill_between(t, 0.5,1, where=s > 0, facecolor='green', alpha=.5) #在因变量大于0的区域,用绿色填充[0.5,1]区间,透明度0.5
ax.fill_betweenx(s, 0.5,1, where=s > -1,facecolor='red', alpha=.5) #在因变量小于0的区域,用红色填充[-1,0.5]区间,透明度0.5

plt.show() #输出图形

运行后的输出结果为:

++图1++

由图1可见:

ax.fill_between()函数规定了竖向填充区域,在纵轴是[0,5,1],在横轴是s>0对应的所有区域;

ax.fill_betweenx()函数规定了横向填充区域,在横轴是[0,5,1],在纵轴是s>-1对应的所有区域。

由图1可见**,ax.fill_betweenx()函数规定的横向填充区域,在纵轴上虽然是s>-1对应的所有区域,但实际取值范围是0>s>-1。**

相关推荐
拖拉机4 分钟前
Python(五)字典
后端·python
闲人编程11 分钟前
Canny边缘检测优化实战
python·opencv·图像识别
Code额11 分钟前
ECMAScript 7~10 新特性
开发语言·javascript·ecmascript
闲人编程15 分钟前
边缘检测基础(Sobel/Laplacian)
python·opencv·图像识别
zyx没烦恼17 分钟前
Linux 多线程
linux·运维·服务器·开发语言·c++
似水এ᭄往昔19 分钟前
【C语言】预处理(预编译)(C语言完结篇)
c语言·开发语言
愚润求学29 分钟前
【C++】模板进阶
c语言·开发语言·c++·笔记·模板
天若有情67333 分钟前
【Python】什么是列表推导式?
开发语言·python
xyd陈宇阳44 分钟前
C++ 入门三:函数与模板
开发语言·c++
星之卡比*44 分钟前
前端知识点---闭包(javascript)
开发语言·前端·javascript