我在绘制散点图时遇到问题
我想在散点图上绘制音频特征的值以获得清晰的视觉效果(因为我的训练集中没有5个音频文件 - 我将在增加数据集后用来训练KNN / SVM等)< / p>
标记的training_labels是
<div class="container">
<div class="left"></div>
<div class="column">
<div class="right"></div>
</div>
</div>
虽然training_feature值为
[0, 0, 1, 2, 1]
每个要分类的对象都有2个功能,分别为[
[103.359375, [11, 36, 60, 85, 110, 134, 159, 183, 208, 232, 257, 286, 310, 335]],
[89.10290948275862, [11, 41, 69, 98, 127, 155, 184, 213, 241, 270, 299, 327, 356]],
[151.99908088235293, [7, 24, 41, 57, 73, 90, 107, 123, 140, 157, 173, 189, 206, 223, 239, 256, 272, 290, 307, 325, 343, 360, 377]],
[143.5546875, [39, 57, 77, 95, 114, 132, 150, 168, 186, 204, 222, 239, 256, 272, 288, 305, 322, 340]],
[83.35433467741936, [8, 38, 70, 101, 137, 168, 199, 230, 266, 298, 334, 365]]
]
和tempo
我如何在散点图中绘制这个?
我尝试了以下但由于x和y的大小不同而失败了
beat per minute
这给了我一个错误featureA = [x[0] for x in training_features]
featureB = [x[1] for x in training_features]
plt.scatter(featureA[:2], featureB[:2])
plt.scatter(featureA[2:], featureB[2:], color='r')
plt.xlabel('Beat Frame')
plt.ylabel('Tempo')
。请帮助:)
编辑:还有一件事,我如何绘制多个特征,即(&gt; 2),我想使用光谱质心,零交叉率,mfcc等,然后绘制结果
答案 0 :(得分:1)
正如ImportanceOfBeingEarnest所说,问题在于数组的大小。
对于散射,您需要一个具有点(x和y)坐标的数组。 但featureB是一个包含许多值的数组。
bindToController: true
然后你需要将training_feature转换成这样的东西:
controllerAs: 'vm'
现在如果我们可以使用plt.scatter!
>>> print(featureB[:2])
[[11, 36, 60, 85, 110, 134, 159, 183, 208, 232, 257, 286, 310, 335],
[11, 41, 69, 98, 127, 155, 184, 213, 241, 270, 299, 327, 356]]
我不明白你想绘图,但我希望它适合你!...