Python计算任意单调曲线在给定区间上的近似长度
本文要点在于:任意曲线在一个很小的局部都可以看作直线。
def curveLength(xs, func):
'''xs:x轴的采样点,越密越准确
func:曲线方程对应的函数'''
#函数曲线上的采样点坐标(x,y)
vs = list(zip(xs, map(func, xs)))
#返回所有折线段长度(欧几里得距离)之和
return sum(((v[0]-vs[i+1][0])**2+(v[1]-vs[i+1][1])**2)**0.5 for i,v in enumerate(vs[:-1]))
#x轴采样点
xs = list(map(lambda x:x/100, range(200)))
#曲线方程对应的函数,在x的区间上应单调
funcs = {'horizontalLine':lambda x: 3,
'diagonalLine':lambda x: x*2,
'cubicCurve':lambda x: x**3}
#曲线近似长度
for k, v in funcs.items():
print(k.ljust(15)+':', curveLength(xs, v))
代码在所用测试数据上的运行结果为:
horizontalLine : 1.99
diagonalLine : 4.449775275224593
cubicCurve : 8.510498199174192
Python计算任意单调曲线在给定区间上的近似长度相关推荐
- python计算任意多边形面积
看了一些方法网上的资料,也自己倒腾了一些想法. 然后看到这个大神的博客(<计算任意多边形的面积>),我就服气了. 我把代码转换为python: # 计算任意多边形的面积,顶点按照顺时针或者 ...
- Python 计算任意两向量之间的夹角
如图所示,我们要计算任意两个向量之间的夹角. (图中的坐标数字是估计值,随手给定) python代码如下 import math AB = [1,-3,5,-1] CD = [4,1,4.5,4.5] ...
- python计算多个模型在不同数据集上的预测概率、获取每个数据集上的最优模型、多个最优模型的ROC曲线进行对比分析
pytyon计算多个模型在不同数据集上的预测概率.获取每个数据集上的最佳模型.多个最优模型的ROC曲线进行对比分析 目录
- python 画任意函数曲线_使用Python画数学函数曲线
import numpy as np import pandas as pd import matplotlib.pyplot as plt plt.figure(1) # 创建图表1 plt.fig ...
- Python计算任意数据的分布函数(累积概率函数CDF)与概率密度(PDF),并绘图
分布函数求导就是概率密度,在任意的数据中由于数据分布不确定,所以严格来讲这些数据是没有分布函数和概率密度函数的,但是我们就是想得出那种结果,画出那种曲线,这里就需要借助scipy.stats.relf ...
- python中坐标系的方向_使用python计算径向角度,顺时针/逆时针方向,给定像素坐标(反之亦然)...
对于我不会涉及的上下文,我需要两个基本上彼此互逆的函数. angle_to()应该返回clockhand必须转向从0°行进到连接p1到p2的线的度数(即p1是旋转中心),并且p1和p2都是像素坐标. ...
- 两个向量之间的夹角公式_Python 计算任意两向量之间的夹角方法
如图所示,我们要计算任意两个向量之间的夹角. (图中的坐标数字是估计值,随手给定) python代码如下 import math AB = [1,-3,5,-1] CD = [4,1,4.5,4.5] ...
- python计算时间差代码_Python3显示当前时间、计算时间差及时间加减法示例代码...
Python3显示当前时间.计算时间差及时间加减法示例代码 摘要 在使用Python写程序时,经常需要输出系统的当前时间以及计算两个时间之间的差值,或者将当前时间加减一定时间(天数.小时.分钟.秒)来 ...
- python计算图形面积的方法_python计算不规则图形面积算法
https://www.xin3721.com/eschool/pythonxin3721/ 介绍:大三上做一个医学影像识别的项目,医生在原图上用红笔标记病灶点,通过记录红色的坐标位置可以得到病灶点的 ...
最新文章
- 程序员必备技能:如何画好架构图?
- Metasploit resource命令技巧
- Qt Creator在桌面上预览
- Java FileInputStream finalize()方法与示例
- 新加入一个团队,我们应该怎么做?
- cisco 三层交换机作DHCP服务器的配置
- Gitlab+jenkins持续集成+自动化部署(三)
- 笔者认为,中国的互联网行业需要真正的CEO
- C语言程序设计第四次作业
- HTML 5 会为 Flash 和 Silverlight 送终吗?
- 阿里云云计算 19 块存储的使用
- 线性代数知识点总结,基础概念和计算整理(手写版)
- Xilinx下载安装与在win10闪退问题解决方法
- linux中su 与su-的区别
- 利用Python进行数据分析的学习笔记——chap9
- day12.3 C语言初阶——求10 个整数中最大值
- 基于SeedUbuntu16.04的缓冲区溢出实验
- ​大数据和云计算技术周报(第37期)
- 信息收集之 端口扫描
- 让办公管理如影随形的移动OA系统
热门文章
- 用ikvm 来把java类库转换成_net类库,IKVM.NET
- pandas手册_Github标星6000+ 这可能是最全的机器学习工具手册
- group by后可以join吗_去韩国留学毕业后可以留在韩国吗
- Java多个注解合并_Java注解合并,注解继承
- mysql都有哪些数据库日志_MySQL数据库之MySQL都有哪些日志?分别都代表什么
- java归并排序代码_Java归并排序算法
- MySQL修改my.cnf配置不生效的解决方法
- Intelli IDEA 快捷键操作,咱来点不一样的
- 极客学院视频源码资料
- Java并发编程基础-ReentrantLock的机制