我有两个numpy数组(x,y)-
import numpy as np
import scipy
from scipy.integrate import simps
y=np.array([1,1,2,1,-2])
x=np.array([0,1,2,3,4])
绘制时看起来像这样-(在蓝线中)
黑线突出显示实际点。我希望在x轴上不在原始数据集中的两个点(标记为红线)之间进行积分。目标是在上图中找到灰色阴影区域(两条红线之间)。
我该如何在python中做呢?使用python SciPy库,我可以像这样集成
scipy.integrate.trapz(y,x)
这给了我灰色区域阴影区域-
但是,如果我在x轴上的1.5和2.2的点之间进行积分,则陷印会给出以下灰色阴影区域:
我该如何正确。
PS-折线图不能表示为函数,因为原始数组中有许多随机点。
正确方向的任何见解都会有所帮助
scipy内插器(例如InterpolatedUnivariateSpline
)具有一种integral
方法。例如,
In [23]: from scipy.interpolate import InterpolatedUnivariateSpline
In [24]: x = np.array([0, 1, 2, 3, 4])
In [25]: y = np.array([1, 1, 2, 1, -2])
In [26]: f = InterpolatedUnivariateSpline(x, y, k=1) # k=1 gives linear interpolation
In [27]: f.integral(1.5, 2.2)
Out[27]: 1.2550000000000003
问题内容: 我有一组X,Y数据点(约10k),很容易将其绘制为散点图,但我想将其表示为热图。 我浏览了MatPlotLib中的示例,它们似乎都已经从热图单元格值开始以生成图像。 有没有一种方法可以将所有不同的x,y转换为热图(其中x,y的频率较高的区域会“变暖”)? 问题答案: 如果你不想要六角形,可以使用的函数: 这将产生的热图。如果你想要,则可以拨打。
离散流或者DStreams是Spark Streaming提供的基本的抽象,它代表一个连续的数据流。它要么是从源中获取的输入流,要么是输入流通过转换算子生成的处理后的数据流。在内部,DStreams由一系列连续的 RDD组成。DStreams中的每个RDD都包含确定时间间隔内的数据,如下图所示: 任何对DStreams的操作都转换成了对DStreams隐含的RDD的操作。在前面的例子中,flatM
这是一个非常特殊的绘图请求,但我有数据要以非常特殊的方式查看。情况如下: 1) 我拥有的数据分为25个数据箱,每个数据箱包含不同数量的数据点。仓位值越大,粗略地说,仓位中的数据点数量就越少(这只是数据处理的结果)。 2)我可以访问bin值。 我可以在matplotlib中轻松生成“errorbar”类型的绘图(y轴从半径缩放到以下度数): 但是,对于我想研究的内容来说,这并不是特别有见地。我真的很
散点图基于基本折线图,x 轴更改为线性轴。要使用散点图,数据必须作为包含 X 和 Y 属性的对象传递。下面的例子创建了一个 3 点的散点图。 var scatterChart = new Chart(ctx, { type: "scatter", data: { datasets: [ { label: "Sc
代码示例 const interpolant = new THREE.DiscreteInterpolant( new Float32Array( 2 ), new Float32Array( 2 ), 1, new Float32Array( 1 ) ); interpolant.evaluate( 0.5 ); Constructor DiscreteInterpolant( paramete
我们已经看到,在非常一般的条件下,离散信道中可出现信号数的对数随时间线性增加。如果能给出这一增长速率,也就是每秒需要多少比特来表示所使用的特定信号,每秒钟所需要的比特数,就能给出信息传输容量。 我们现在考虑信源。如何用数学描述一个信源呢?一个给定信源每秒生成多少比特的信息呢?问题的要点在于,如何利用信源的相关统计知识,通过信息的正确编码,减少所需要的信道容量。比如,在电报通信中,要传送的消息由字符
我对hibernate有点陌生,所以我从一些简单的东西开始。 根据F.I.R.S.T测试原则,单元测试必须是I-隔离的。我试图使用注释将其应用于存储库层(Hibernate\JPA)的集成测试: 但是,只要在一个事务中执行两个方法,hibernate实际上并不执行它们(据我所知)--至少日志中没有行。 我看到了一个自带并调用其方法的解决方案。但我不喜欢它,因为我试图在不绑定Hibernate\JP
# 给ISO离线集成补丁 大家是否厌倦了每次安装补丁后又要打一堆补丁的感觉?使用微软的Dism打补丁又需要自己收集补丁,而且每个月有新补丁,还有老补丁被取代。现在Dism++重建了Windows Update,直接从WSUS服务器中导出补丁数据库,全自动获取最新更新,自动剔除过期老补丁,在通过CBS判断系统是否需要此更新。下面来看看怎么使用吧。 解压ISO 为了处理ISO里面的install.w