在连续数组上维护索引指针的一种方法

2024-05-19 00:02:57 发布

您现在位置:Python中文网/ 问答频道 /正文

在Python中,我正在尝试创建一个我喜欢的特定吉他里夫的每音符频率可视化

为了做到这一点和绘制点matplotlib.pyplot文件我对每个音符都这样做,但最终会对2个特定频率的特定点的y值求和

import numpy
import matplotlib.pyplot as plt

t_per_beat = 110/60.0 #tempo is 110 bpm, finding no of seconds per beat

#creating range of x values for 8 beats of music, in this case 2 bars
x0 = numpy.linspace(0, t_per_beat * 8, 100)
a = []
#generate y-axis values
for i in x0:
    a.append(numpy.sin(<note_freq> * i)

我希望y轴的值像x轴一样是连续的,所以绘制点的数组是最好的,但是我也希望能够索引数组中的特定间隔,直到“十六音”(t\u per\u beat/4)的粒度

因为我笔记的频率值可能会增加(所以我需要增加我笔记中的点数)numpy.linspace数组,我不能保证整个数组的索引数间隔是一致的。你知道吗

当然,最好分裂成一个单独阵列的容器(即:二维列表),但如果波的建模意味着两个波在拍边界上合并,这就不是很理想。你知道吗

本质上,我的问题是(在没有更好的解决方案的情况下,我还没有想到),是否有逻辑来存储数组中对一段数据的引用,以便在调用时总能在数组中找到所述数据的索引?你知道吗


Tags: ofinimportnumpyformatplotlib绘制数组

热门问题