Extracts data from all curves from each SignalObj. Parameter (default), (type): ----------------------------- * sigObjs (), (list): a list with SignalObjs for curve data extraction Return (type): -------------- * curveData (), (list): a l
(sigObjs)
| 451 | |
| 452 | |
| 453 | def _curve_data_extractor_freq(sigObjs): |
| 454 | """ |
| 455 | Extracts data from all curves from each SignalObj. |
| 456 | |
| 457 | Parameter (default), (type): |
| 458 | ----------------------------- |
| 459 | |
| 460 | * sigObjs (), (list): |
| 461 | a list with SignalObjs for curve data extraction |
| 462 | |
| 463 | Return (type): |
| 464 | -------------- |
| 465 | |
| 466 | * curveData (), (list): |
| 467 | a list with dictionaries containing the information about |
| 468 | each curve. Needed keys for frequency plot: |
| 469 | |
| 470 | - 'x', (), (ndarray): time axis; |
| 471 | - 'y', (), (ndarray): linear effective value axis; |
| 472 | - 'label', (), (str): curve label; |
| 473 | - 'dBRef', (), (float): decibel scale reference; |
| 474 | - 'minFreq', (), (float): SignalObj's minimum analysed frequency |
| 475 | - 'maxFreq', (), (float): SignalObj's maximum analysed frequency |
| 476 | |
| 477 | >>> curveData = [{'x':x, 'y':y, 'label':'my beautiful curve', |
| 478 | 'dBRef':2e-5, 'minFreq':20, 'maxFreq':20000}] |
| 479 | """ |
| 480 | curveData = [] |
| 481 | for sigObj in sigObjs: |
| 482 | minFreq = sigObj.freqMin |
| 483 | maxFreq = sigObj.freqMax |
| 484 | x = sigObj.freqVector |
| 485 | for chIndex in range(sigObj.numChannels): |
| 486 | chNum = sigObj.channels.mapping[chIndex] |
| 487 | unitData = '[{} ref.: {} {}]'.format(sigObj.channels[chNum].dBName, |
| 488 | sigObj.channels[chNum].dBRef, |
| 489 | sigObj.channels[chNum].unit) |
| 490 | label = '{} {}'.format(sigObj.channels[chNum].name, unitData) |
| 491 | y = sigObj.freqSignal[:, chIndex] |
| 492 | dBRef = sigObj.channels[chNum].dBRef |
| 493 | curveData.append({ |
| 494 | 'label':label, |
| 495 | 'x':x, |
| 496 | 'y':y, |
| 497 | 'dBRef':dBRef, |
| 498 | 'minFreq':minFreq, |
| 499 | 'maxFreq':maxFreq |
| 500 | }) |
| 501 | return curveData |
| 502 | |
| 503 | |
| 504 | def bars(analyses, xLabel, yLabel, yLim, xLim, title, decimalSep, barWidth, |