Python实现区域填充的示例代码


Posted in Python onFebruary 03, 2021

所用的库及环境:

IDE:Pycharm

Python环境:python3.7

Matplotlib: Matplotlib 1.11

Numpy: Numpy1.15.

区域填充

前言

如何填充一块区域,就是给一块区域上色

代码及效果图

Python实现区域填充的示例代码

fill()函数介绍

文档:https://matplotlib.org/api/_as_gen/matplotlib.pyplot.fill.html

介绍:绘制填充多边形

属性:

  • args:是一个x,y的序列,每个多边形由其节点x和y的位置列表定义
  • color :填充的颜色
  • alpha:透明度

只填充两个图形重合区域

代码及效果图

Python实现区域填充的示例代码

Python实现区域填充的示例代码

fill_between()函数介绍

  • x:一个序列,定义曲线的节点的x坐标
  • y1:可以是一个序列,定义第一条曲线的y坐标
  • y2:可以是一个序列,定义第二条曲线的y坐标
  • where:一个可选参数,布尔值,y1>y2表示y1线在上时填充,y1<y2表示y2线在上时填充
  • interpolate :看图中会发现有些填充的地方会有空白,此参数为Tur会自动填充
  • facecolor:要填充的颜色

加入interpolate参数效果:

Python实现区域填充的示例代码

Python实现区域填充的示例代码

示例

import matplotlib.pyplot as plt
import numpy as np
 
x= np.linspace(0,5*np.pi, 1000)
 
y1 = np.sin(x)
y2 = np.sin(2*x)
 
#plt.plot(x,y1)
#plt.plot(x,y2)
 
plt.fill(x,y1,'b',alpha=0.5)
plt.fill(x,y2,'r',alpha=0.3)
 
plt.fill_between(x,y1,y2,facecolor='green')
plt.grid(True)
 
plt.show()
 
#########################################################
plt.plot(x,y1,'b',alpha=0.5)
plt.plot(x,y2,'r',alpha=0.3)
#添加条件
#如果数据点比较少的情况下,会有缝隙出现,使用interpolate可以填充缝隙
plt.fill_between(x,y1,y2,where=y1>=y2,facecolor='green',interpolate=True)
plt.fill_between(x,y1,y2,where=y2>y1,facecolor='yellow',interpolate=True)
plt.grid(True)
 
plt.show()
###########################################################
 
n = 256
X = np.linspace(-np.pi, np.pi, n, endpoint=True)
Y = np.sin(2 * X)
 
 
plt.plot(X, Y + 1, color='blue', alpha=1.00)
plt.fill_between(X, 1, Y + 1, color='blue', alpha=.25)
 
plt.plot(X, Y - 1, color='blue', alpha=1.00)
plt.fill_between(X, -1, Y - 1, (Y - 1) > -1, color='blue', alpha=.25)
plt.fill_between(X, -1, Y - 1, (Y - 1) < -1, color='red', alpha=.25)
 
plt.xlim(-np.pi, np.pi)
plt.xticks(())
plt.ylim(-2.5, 2.5)
plt.yticks(())

效果图:

Python实现区域填充的示例代码

参考视频:《Python数据可视化分析 matplotlib教程》

结语:

感谢matplotlib提供的文档,感谢麦子学院提供的视频教学

到此这篇关于Python实现区域填充的示例代码的文章就介绍到这了,更多相关Python 区域填充内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
在Django的模型和公用函数中使用惰性翻译对象
Jul 27 Python
利用pyinstaller或virtualenv将python程序打包详解
Mar 22 Python
Python贪吃蛇游戏编写代码
Oct 26 Python
Python基于time模块求程序运行时间的方法
Sep 18 Python
python tensorflow基于cnn实现手写数字识别
Jan 01 Python
对pandas通过索引提取dataframe的行方法详解
Feb 01 Python
利用ctypes获取numpy数组的指针方法
Feb 12 Python
Python3 翻转二叉树的实现
Sep 30 Python
python通过函数名调用函数的几种场景
Sep 23 Python
python定时截屏实现
Nov 02 Python
python tkinter模块的简单使用
Apr 07 Python
如何利用python实现Simhash算法
Jun 28 Python
matplotlib事件处理基础(事件绑定、事件属性)
Feb 03 #Python
matplotlib相关系统目录获取方式小结
Feb 03 #Python
详解matplotlib绘图样式(style)初探
Feb 03 #Python
python可视化分析的实现(matplotlib、seaborn、ggplot2)
Feb 03 #Python
matplotlib交互式数据光标mpldatacursor的实现
Feb 03 #Python
matplotlib更改窗口图标的方法示例
Feb 03 #Python
python中添加模块导入路径的方法
Feb 03 #Python
You might like
一家之言的经验之谈php+mysql扎实个人基本功
2008/03/27 PHP
PHP高级编程实例:编写守护进程
2014/09/02 PHP
微信开发之获取JSAPI TICKET
2017/07/07 PHP
laravel通用化的CURD的实现
2019/12/13 PHP
PHP实现随机发放扑克牌
2020/04/21 PHP
IE innerHTML,outerHTML所引起的问题
2009/06/04 Javascript
一个JS小玩意 几个属性相加不能超过一个特定值.
2009/09/29 Javascript
jquery方法+js一般方法+js面向对象方法实现拖拽效果
2012/08/30 Javascript
Jquery实现页面加载时弹出对话框代码
2013/04/19 Javascript
不同Jquery版本引发的问题解决
2013/10/14 Javascript
js判断字符长度及中英文数字等
2014/03/19 Javascript
jQuery中ajax的load()方法用法实例
2014/12/26 Javascript
Node.js操作Firebird数据库教程
2016/03/04 Javascript
jquery做个日期选择适用于手机端示例
2017/01/10 Javascript
微信小程序 两种滑动方式(横向滑动,竖向滑动)详细及实例代码
2017/01/13 Javascript
Vue2.x中的父组件传递数据至子组件的方法
2017/05/01 Javascript
JS如何实现在页面上快速定位(锚点跳转问题)
2017/08/14 Javascript
javascript实现blob加密视频源地址的方法
2019/08/08 Javascript
Vue-CLI 项目在pycharm中配置方法
2019/08/30 Javascript
原生JS实现烟花效果
2020/03/10 Javascript
vue实现图片上传功能
2020/05/28 Javascript
three.js欧拉角和四元数的使用方法
2020/07/26 Javascript
Python  连接字符串(join %)
2008/09/06 Python
Python语言实现将图片转化为html页面
2017/12/06 Python
python-tkinter之按钮的使用,开关方法
2019/06/11 Python
python 求某条线上特定x值或y值的点坐标方法
2019/07/09 Python
python爬虫scrapy基于CrawlSpider类的全站数据爬取示例解析
2021/02/20 Python
利用css3实现的简单的鼠标悬停按钮
2014/11/04 HTML / CSS
毕业生求职简历中的自我评价
2013/10/18 职场文书
教师的实习鉴定
2013/12/15 职场文书
中学教师教育感言
2014/02/21 职场文书
社区交通安全实施方案
2014/03/22 职场文书
省级三好学生主要事迹材料
2015/11/03 职场文书
Spring Bean的实例化之属性注入源码剖析过程
2021/06/13 Java/Android
mysql字段为NULL索引是否会失效实例详解
2022/05/30 MySQL
html解决浏览器记住密码输入框的问题
2023/05/07 HTML / CSS