Python画出美观的论文图(4)数值思维 零点 交点 极大值 极小值 检测标注

本文探讨使用数值软件如NumPy和Matplotlib进行函数零点、交点及极值点的求解过程,通过代码示例展示如何利用diff、sign、argwhere等函数处理数据,并指出精度限制及改进方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数值软件的思维果然和mma那种软件很不一样呢,记录一下。

from numpy import diff,sign,argwhere,linspace
x=linspace(-10,10,200)
f=27*x+130
g=-12-58*x+x**2+x**3
idz=argwhere(diff(sign(g))).flatten()
idi=argwhere(diff(sign(f-g))).flatten()
idm=argwhere(diff(sign(diff(g)))).flatten()
plt.figure(figsize=(12*50./127,8*50./127))
plt.plot(x,f)
plt.plot(x,g)
plt.plot(x[idz],g[idz],"o",label="零点")
plt.plot(x[idi],g[idi],"o",label="交点")
plt.plot(x[idm],g[idm],"o",label="极值点")
plt.legend(prop={'family':'SimSun'})

在这里插入图片描述

不过这个毕竟是根据数据得出的,不够精确,交点就明显歪了,想要精确的就用scipy.optimize解吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值