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

相关推荐
~无忧花开~10 分钟前
Vue二级弹窗关闭错误解决指南
开发语言·前端·javascript·vue.js
老华带你飞14 分钟前
在线教育|基于springboot + vue在线教育系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端
REDcker1 小时前
JS 与 C++ 语言绑定技术详解
开发语言·javascript·c++
June`1 小时前
C++11新特性全面解析(三):智能指针与死锁
开发语言·c++
认真敲代码的小火龙1 小时前
【JAVA项目】基于JAVA的医院管理系统
java·开发语言·课程设计
_一路向北_1 小时前
爬虫框架:Feapder使用心得
爬虫·python
皇族崛起1 小时前
【3D标注】- Unreal Engine 5.7 与 Python 交互基础
python·3d·ue5
你想知道什么?2 小时前
Python基础篇(上) 学习笔记
笔记·python·学习
曼巴UE52 小时前
UE5 C++ 动态多播
java·开发语言
steins_甲乙2 小时前
C++并发编程(3)——资源竞争下的安全栈
开发语言·c++·安全