我有一个创建包含3个元素的列表的函数,并将此列表附加到名为peak的主列表中:
peak = (x_data point, y_data point and area)
peaks = (peak, peak, peak etc)
我正在尝试编写一个循环遍历peak [area]元素的循环,并返回大于100000的区域,然后在matplotlib“text”中使用它来绘制输入。这是我的代码:
plot(x_data, y_data)
for peak in peaks:
if peak[2] >= 100000:
text(peak[0], 1.02*peak[1], '%d'%int(peak[2]))
grid(True)
show()
输出只是x_data vs y_data图,没有文字注释......任何想法为什么?我无法弄清楚。
如果我排除if语句,则此循环有效。但是,我想选择面积大于100000的峰。
答案 0 :(得分:0)
看来峰值区域报告为负值。
解决方案是改变
Regular Expression
到
for peak in peaks:
if peak[2] >= 100000:
text(peak[0], 1.02*peak[1], '%d'%int(peak[2]))