MCPcopy Create free account
hub / github.com/PyTTaMaster/PyTTa / _curve_data_extractor_freq

Function _curve_data_extractor_freq

pytta/_plot.py:453–501  ·  view source on GitHub ↗

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)

Source from the content-addressed store, hash-verified

451
452
453def _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
504def bars(analyses, xLabel, yLabel, yLim, xLim, title, decimalSep, barWidth,

Callers 1

freqFunction · 0.85

Calls 1

appendMethod · 0.80

Tested by

no test coverage detected