Note—— OSError & np.degress() & scipy.signal.argrelextrema

OSError

Flask项目

python filename.py

报错

地址已被使用

搜索相关问题后发现是因为,你曾启动过相同或者类似的服务占用了这个端口 (一般来讲,在Mac上直接用Python启动的话,会导致退出不完整,你不能通过点击GUI的"退出"按钮来一步到位,后台的Python进程还是存在的,而它就是一直占用端口不释放的元凶)

Solution

  1. 改掉默认的端口
    只能解决当前的问题,后续仍会出现类似的问题
  2. 就是杀掉占用端口的程序
    使用lsof命令,全写是list open file,可以列出当前系统打开文件

我们要找到之前占用的端口5000

所以终端输入的命令为:

powershell 复制代码
lsof -i:5000

然后可以看到PID为9108

  1. 接下来杀掉这个进程就可以了
    在终端输入命令:
powershell 复制代码
kill 9108 

之后重新运行下程序就不会报错了

np.degress()

弧度 转换为角度

np.pi ----> number

python 复制代码
import numpy as np
angle = np.array([np.pi/2, np.pi/3, np.pi/6])
np.degrees(angle)

scipy.signal.argrelextrema

求数组中的极大值和极小值

peaks

python 复制代码
signal.argrelextrema(data_y, np.greater, order=1)

valleys

python 复制代码
valley_indexes = signal.argrelextrema(data_y, np.less, order=1)

Param

  • data_y: plot的竖直value 或 data
  • np.greater: 极大
  • np.less: 极小
  • order: 两侧用多少点进行比较
python 复制代码
from scipy import signal
import numpy as np
import matplotlib.pyplot as plt

data_x = np.arange(start = 0, stop = 40, step = 1, dtype='int')
data_y = np.array([98,96,97,100,95,105,75,50,45,42,
					51,85,90,92,91,89,101,62,65,52,
					47,58,55,75,89,92,94,91,89,79,
					85,65,42,55,48,50,85,88,95,100])

# Find peaks
# order:两侧使用多少点进行比较
peak_indexes = signal.argrelextrema(data_y, np.greater, order=1)
peak_indexes = peak_indexes[0]

# Find valleys
# order:两侧使用多少点进行比较
valley_indexes = signal.argrelextrema(data_y, np.less, order=1)
valley_indexes = valley_indexes[0]

(fig, ax) = plt.subplots()

# Plot all data
ax.plot(data_x, data_y)

# Plot peaks
peak_x = peak_indexes
peak_y = data_y[peak_indexes]
ax.scatter(peak_x, peak_y, marker='o', color='red', label="Peaks")

# Plot valleys
valley_x = valley_indexes
valley_y = data_y[valley_indexes]
ax.scatter(valley_x, valley_y, marker='o', color='green', label="Valleys")

# 添加标题
plt.title('Find peaks and valleys using argrelextrema()')
# 添加图例
plt.legend(loc='best')
# 保存图像
plt.savefig('peaks-valleys.png')
# 显示图像
plt.show()

set Param

order = 1

order = 3

相关推荐
周博洋K2 分钟前
SSI用量子计算来玩AI
人工智能·量子计算
不太会写10 分钟前
基于Python+django+mysql旅游数据爬虫采集可视化分析推荐系统
python·推荐算法
IT猿手20 分钟前
2025高维多目标优化:基于导航变量的多目标粒子群优化算法(NMOPSO)的无人机三维路径规划,MATLAB代码
开发语言·人工智能·算法·机器学习·matlab·无人机·cocos2d
呱牛do it24 分钟前
Python Matplotlib图形美化指南
开发语言·python·matplotlib
pianmian127 分钟前
python制图之小提琴图
开发语言·python·信息可视化
橙子小哥的代码世界29 分钟前
【机器学习】【KMeans聚类分析实战】用户分群聚类详解——SSE、CH 指数、SC全解析,实战电信客户分群案例
人工智能·python·机器学习·kmeans·数据科学·聚类算法·肘部法
计算机徐师兄30 分钟前
Python基于Flask的豆瓣Top250电影数据可视化分析与评分预测系统(附源码,技术说明)
python·flask·豆瓣top250电影数据可视化·豆瓣top250电影评分预测·豆瓣电影数据可视化分析系统·豆瓣电影评分预测系统·豆瓣电影数据
k layc34 分钟前
【论文解读】《Training Large Language Models to Reason in a Continuous Latent Space》
人工智能·python·机器学习·语言模型·自然语言处理·大模型推理
阿乾之铭35 分钟前
动态规划算法
算法·动态规划
菠菠萝宝37 分钟前
【代码随想录】第九章-动态规划(上)
算法·动态规划·01背包·完全背包·多重背包·上楼梯