numpy与matplotlib 常用日常代码

matplotlab 和 numpy 可能是python 数据处理工作中用的最多的库了, 官网的文档十分详细,但是就是因为数量庞大,很多时候常用的功能和生僻冷门的功能混在一起,找不到重点。按照二八原则,掌握20%的功能就已经能应付绝大多数的场景了,这里我展示了一些自己常用的一些功能。

一、matplotlab

官方文档

  1. 用 axis 对象画一张图,axis 这个对象可以对途中的坐标轴、刻度、图例、标题进行操作,建议长期使用这个对象,尽量挖掘它的功能,习惯了之后很有用,不要直接用plt.plot()。
from matplotlib import pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = np.sin(x)
fig, axis = plt.subplots()
axis.plot(x, y)
axis.set_title("aplitude")
axis.set_xlabel("time/s")
axis.set_ylabel("amplitude")
plt.show()

在这里插入图片描述
2. 一幅图中画两条曲线,并加上图例

fig, axis = plt.subplots()
axis.plot(x, y, label='this will be legend?')
axis.plot(x, y **2, label='this will be legend2?')
axis.legend()
axis.set_title("Sine Wave")
axis.set_xlabel("time/s")
axis.set_ylabel("amplitude")
plt.show()

在这里插入图片描述
3. 在一个 figure中使用多个子图,这个在深度学习很有用,比如可视化数据集中的一些小图

fig, axs = plt.subplots(2,3)
axs[0,0].plot(x, y, label='aa')
axs[0,0].plot(x, y*2, label='bb')
axs[0,0].set_title('linear')
axs[0,0].legend()axs[0,1].plot(x, y**2)
axs[0,2].plot(x, y**3)
axs[1,0].plot(x, y**4)
axs[1,1].plot(x, y**5)
axs[1,2].plot(x, y**6)
plt.show()

在这里插入图片描述

二、Numpy 和 Matplotlab

  1. 半透明透明度的rbga 图片
# construct a rgba red image with numpy
import numpy as np
import matplotlib.pyplot as plt
# set alpha to 0.8
fig, axis = plt.subplots(1, 5)
for i in range(0,  5):im = np.zeros((100,100,4), dtype=np.uint8)im[:,:,0] = 255im[:,:,3] = (i+1)*255/5axis[i].imshow(im)axis[i].axis('off')
plt.show()

在这里插入图片描述

  1. 各种功能混和展示
import numpy as np
import random
import matplotlib.pyplot as plt
from math import sqrt
pi = 3.14159
h,w = 60,80# 生成一个白布背景
white_blackground = np.full((h,w,3), 100, dtype=np.uint8)
fig, axis = plt.subplots(2,3)
axis[0][0].imshow(white_blackground)
# 生成像素颜色随机的rgb图片
random_color = np.random.randint(255, size=(h,w,3), dtype=np.uint8)
axis[0][1].imshow(random_color)
# 生成一张rgba图片
rgb_pic = np.zeros(shape=(h,w,4), dtype=np.uint8)
rgb_pic[:] = (255, 0, 0, int(0.7 * 255))
axis[0][2].imshow(rgb_pic)
# 生成像素颜色随机的灰度图片
random_gray = np.random.randint(255, size=(h,w, 1), dtype=np.uint8)
axis[1][0].imshow(random_gray, cmap="gray")
# 生成一个左白右黑的渐变图片
half_black = np.zeros((h,w),dtype=np.uint8)
half_black[:, :w//2] = 255
axis[1][1].imshow(half_black, cmap='gray')
# 生成一个强度满足高斯分布的灰度图片
raw = np.zeros((h,w), dtype=np.float32)
center = (h/2, w/2)
for i in range(h):for j in range(w):raw[i][j] =  sqrt((i-center[0]) ** 2 + (j - center[1]) ** 2)
def normal(X, scale=1.0):Y = -1 * (X ** 2 )/ (2 * scale ** 2)Y = np.exp(Y) / (sqrt(2* pi * scale))return Y
Y = normal(raw, scale=10.0) 
axis[1][2].imshow(Y)
plt.show()

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/95175.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[Docker精进篇] Docker镜像构建和实践 (三)

前言: Docker镜像构建的作用是将应用程序及其依赖打包到一个可移植、自包含的镜像中,以便在不同环境中快速、可靠地部署和运行应用程序。 文章目录 Docker镜像构建1️⃣是什么?2️⃣为什么?3️⃣镜像构建一、用现有容器构建新镜像…

最强自动化测试框架Playwright(34)CDPSession

在 Playwright 中,CDPSession 类是用于与浏览器的 Chrome DevTools Protocol (CDP) 会话进行交互的对象。CDP 是与Chromium浏览器通信的底层协议,它提供了许多与浏览器进行交互和控制的功能。 CDPSession 类提供了执行底层 CDP 命令的方法,并…

优测云服务平台|【压力测试功能升级】轻松完成压测任务

一、本次升级主要功能如下: 1.多份报告对比查看测试结果 2.报告新增多种下载格式 Word格式Excel格式 3.新增多种编排复杂场景的控制器 漏斗控制器并行控制器事务控制器仅一次控制器分组控制器集合点 4.新增概览页面,包含多种统计维度 二、报告对比…

30W IP网络有源音箱 校园广播音箱

SV-7042XT是深圳锐科达电子有限公司的一款2.0声道壁挂式网络有源音箱,具有10/100M以太网接口,可将网络音源通过自带的功放和喇叭输出播放,可达到功率30W。同时它可以外接一个30W的无源副音箱,用在面积较大的场所。5寸进口全频低音…

嵌入式Linux开发实操(九):CAN接口开发

前言: CAN网络在汽车中的使用可以说相当广泛。而CAN网络需要的收发器最常用的就是NXP 的TJA1042: CAN网络:

Docker网络与Cgroup硬件资源占用控制

目录 1.dockers的网络模式 1.1 获取容器的进程号 1.2 docker网络模式的特性 1.3 host主机模式 1.4 container模式 1.5 none模式 1.6 bridge 桥接模式 1.6 容器的自定义网络 (1)未创建自定义网络时,创建指定IP容器的测试 &#xff0…

opsForHash() 与 opsForValue 请问有什么区别?

&#x1f449;&#xff1a;&#x1f517;官方API参考手册 如图&#xff0c;opsForHash()返回HashOperations<K,HK,HV>但是 opsForValue()返回ValueOperations<K,V>… 区别就是opsForHash的返回值泛型中有K,HK,HV,其中K是Redis指定的某个数据库里面某一个关键字(由…

详解拦截器和过滤器

目录 代码演示过滤器Demo拦截器Demo 过滤器自定义拦截器配置拦截器过滤器执行原理多个过滤器的执行顺序 拦截器自定义拦截器注册拦截器1&#xff09;注册拦截器2&#xff09;配置拦截的路径3&#xff09;配置不拦截的路径 多个拦截器的执行顺序 过滤器和拦截器的区别 代码演示 …

如何使用Spark/Flink等分布式计算引擎做网络入侵检测

如何使用Spark/Flink等分布式计算引擎做网络入侵检测 引言16 Distributed Abnormal Behavior Detection Approach Based on Deep Belief Network and Ensemble SVM Using Spark17 Spark configurations to optimize decision tree classification on UNSW-NB1518 A dynamic spa…

elementUI 的上传组件<el-upload>,自定义上传按钮样式

方法一&#xff1a; 原理&#xff1a;调用<el-upload>组件的方法唤起选择文件事件 效果&#xff1a; 页面代码&#xff1a; 1、选择图片按钮 <div class"flex_row_spacebetween btn" click"chooseImg"><span class"el-icon-plus ic…

【QT】 QFileQFileInfo文件操作

很高兴在雪易的CSDN遇见你 &#xff0c;给你糖糖 欢迎大家加入雪易社区-CSDN社区云 前言 本文分享QT对文件的操作技术&#xff0c;希望对各位小伙伴有所帮助&#xff01; 感谢各位小伙伴的点赞关注&#xff0c;小易会继续努力分享&#xff0c;一起进步&#xff01; 你的点…

Vue3 —— watchEffect 高级侦听器

该文章是在学习 小满vue3 课程的随堂记录示例均采用 <script setup>&#xff0c;且包含 typescript 的基础用法 前言 Vue3 中新增了一种特殊的监听器 watchEffect&#xff0c;它的类型是&#xff1a; function watchEffect(effect: (onCleanup: OnCleanup) > void,o…

go_并发编程(1)

go并发编程 一、 并发介绍1&#xff0c;进程和线程2&#xff0c;并发和并行3&#xff0c;协程和线程4&#xff0c;goroutine 二、 Goroutine1&#xff0c;使用goroutine1&#xff09;启动单个goroutine2&#xff09;启动多个goroutine 2&#xff0c;goroutine与线程3&#xff0…

通过 HttpClient 发送请求

文章目录 1. 引入 maven 依赖2. 发送 GET 方式的请求3. 发送 POST 方式的请求 1. 引入 maven 依赖 <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId> </dependency>2. 发送 GET 方式的请求…

C++类型转换

目录 隐式类型转换 转型方向 整型提升和截断 显示转换的种类 C风格的强制类型转换 C风格的函数样式转换 隐式类型转换 转型方向 隐式类型转换&#xff0c;又称自动转换、算数转换&#xff0c;是由编译器自动完成的类型转换称为隐式类型转换。自动转换的原则为&#xff…

Leaflet入门,Leaflet如何实现vue双向绑定数据添加到图片标记物到地图上,动态根据vue数据更新到地图上以及鼠标经过标记物显示提示框

前言 本章使用Leaflet的vue2-leaflet或者vue-leaflet插件方式实现vue数据绑定地图数据,实现地图标记物与vue数据的双向联动更新,以及鼠标经过标记物显示提示框功能。 实现效果演示 vue如何使用Leaflet vue2如何使用:《Leaflet入门,如何使用vue2-leaflet实现vue2双向绑定…

GaussDB数据库SQL系列-子查询

目录 一、前言 二、GaussDB SQL子查询表达式 1、EXISTS/NOT EXISTS 2、IN/NOT IN 3、ANY/SOME 4、ALL 三、GaussDB SQL子查询实验示例 1、创建实验表 2、EXISTS/NOT EXISTS示例 3、IN/NOT IN 示例 4、ANY/SOME 示例 5、ALL示例 四、注意事项及建议 五、小结 一、…

msvcp110.dll是什么意思,msvcp110.dll丢失的解决方法

装好软件或游戏之后&#xff0c;一打开就跳出各种报错信息的情况小伙伴一定见过&#xff0c;其中缺少各种msvcp110.dll文件最常见。小伙伴们一定奇怪&#xff0c;用得好好的电脑&#xff0c;怎么会缺文件呢&#xff1f;为啥其他游戏/应用就没事呢&#xff1f;其实这些“丢失”的…

LVS负载均衡群集部署(LVS-NAT模型实例)

一、集群 1.1集群的含义 Cluster&#xff0c;集群、群集,为解决某个特定问题将多台计算机组合起来形成的单个系统。 由多台主机构成&#xff0c;但对外只表现为一个整体。 1.2群集的三种类型 1.2.1负载均衡群集 LB&#xff1a; Load Balancing&#xff0c;负载均衡&#x…

国产化系统中遇到的视频花屏、卡顿以及延迟问题的记录与总结

目录 1、国产化系统概述 1.1、国产化操作系统与国产化CPU 1.2、国产化服务器操作系统 1.3、当前国产化系统的主流配置 2、视频解码花屏与卡顿问题 2.1、视频解码花屏 2.2、视频解码卡顿 2.3、关于I帧和P帧的说明 3、国产显卡处理速度慢导致图像卡顿问题 3.1、视频延…