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。**

相关推荐
biter down2 小时前
14:pytest-order 插件 顺序控制案例
开发语言·python·pytest
郝学胜-神的一滴2 小时前
Qt 高级开发 009: C++ Lambda 表达式
开发语言·c++·qt·软件构建
测试开发-学习笔记3 小时前
从0开始搭建自动化(一)-appium+python
python·自动化
㳺三才人子3 小时前
初探 Flask
后端·python·flask·html
星栈独行3 小时前
我在 Rust 全栈项目里用 JWT 做无状态认证
开发语言·后端·rust·前端框架·开源·github·web
石山代码3 小时前
C++ 轻量级日志系统
开发语言·c++
AI算法沐枫4 小时前
机器学习到底是什么?
人工智能·python·深度学习·机器学习·数据挖掘·大模型·#ai
小技与小术4 小时前
玩转Flask
开发语言·python·flask
SilentSamsara4 小时前
Python 性能优化:tracemalloc、profiling 与 C 扩展加速
开发语言·python·青少年编程·性能优化
冰小忆4 小时前
大驼峰命名规范和小驼峰命名规范的区别是什么?
开发语言·python