Extracts data from all curves from each SignalObj. Parameter (default), (type): ----------------------------- * sigObj (), (list): a list with SignalObjs for curve data extraction Return (type): -------------- * curveData (list): A lis
(sigObjs)
| 1302 | |
| 1303 | |
| 1304 | def _curve_data_extractor_waterfall(sigObjs): |
| 1305 | """ |
| 1306 | Extracts data from all curves from each SignalObj. |
| 1307 | |
| 1308 | Parameter (default), (type): |
| 1309 | ----------------------------- |
| 1310 | |
| 1311 | * sigObj (), (list): |
| 1312 | a list with SignalObjs for curve data extraction |
| 1313 | |
| 1314 | Return (type): |
| 1315 | -------------- |
| 1316 | |
| 1317 | * curveData (list): |
| 1318 | A list with dictionaries containing the information about each |
| 1319 | curve. Keys for waterfall plot: |
| 1320 | |
| 1321 | - 'time', (), (ndarray): time vector; |
| 1322 | - 'freq', (), (ndarray): freq vector; |
| 1323 | - 'ht', (), (ndarray): impulsive response in time domain; |
| 1324 | - 'minFreq', (), (float): SignalObj's minimum frequency |
| 1325 | - 'maxFreq', (), (float): SignalObj's maximum frequency |
| 1326 | - 'samplingRate', (), (int): signal sampling rate; |
| 1327 | - 'label', (), (str): curve label; |
| 1328 | |
| 1329 | >>> curveData = [{'x':x, 'y':y, 'label':'my beautiful curve'}] |
| 1330 | """ |
| 1331 | curveData = [] |
| 1332 | for sigObj in sigObjs: |
| 1333 | samplingRate = sigObj.samplingRate |
| 1334 | for chIndex in range(sigObj.numChannels): |
| 1335 | chNum = sigObj.channels.mapping[chIndex] |
| 1336 | label = '{} [{}]'.format(sigObj.channels[chNum].name, |
| 1337 | sigObj.channels[chNum].unit) |
| 1338 | curveData.append({ |
| 1339 | 'time':sigObj.timeVector, |
| 1340 | 'freq':sigObj.freqVector, |
| 1341 | 'ht':sigObj.timeSignal[:, chIndex], |
| 1342 | 'dBRef':sigObj.channels[chNum].dBRef, |
| 1343 | 'minFreq':sigObj.freqMin, |
| 1344 | 'maxFreq':sigObj.freqMax, |
| 1345 | 'samplingRate':samplingRate, |
| 1346 | 'label':label |
| 1347 | }) |
| 1348 | return curveData |
| 1349 | |
| 1350 | |
| 1351 | def _colored_lines(fig, ax, X, Y, Z, label, cmap='jet', bar=True): |