s_int32 = Signal(samples=np.array([-20, -10, 0, 10, 20], dtype=np.int32), timestamps=timestamps, name='Int32_Signal', unit='i4') # float64 s_float64 = Signal(samples=np.array([-20, -10, 0, 10, 20], dtype=np.int32), timestamps=timestamps, name='Float64_Signal', unit='f8') # create empty MDf version 4.00 file mdf4 = MDF(version='4.00') # append the 3 signals to the new file signals = [s_uint8, s_int32, s_float64] mdf4.append(signals, 'Created by Python') # save new file mdf4.save('my_new_file.mf4') # convert new file to mdf version 3.10 with compression of raw channel data mdf3 = mdf4.convert(to='3.10', compression=True) print(mdf3.version) # prints >>> 3.10 # get the float signal sig = mdf3.get('Float64_Signal') print(sig) # prints >>> Signal { name="Float64_Signal": s=[-20 -10 0 10 20] t=[ 0.1 0.2 0.30000001 0.40000001 0.5 ] unit="f8" conversion=None }
timestamps=timestamps, name='Float64_Signal', unit='f8') # create empty MDf version 4.00 file mdf4 = MDF(version='4.10') # append the 3 signals to the new file signals = [s_uint8, s_int32, s_float64] mdf4.append(signals, 'Created by Python') # save new file mdf4.save('my_new_file.mf4', overwrite=True) # convert new file to mdf version 3.10 with lowest possible RAM usage mdf3 = mdf4.convert('3.10', memory='minimum') print(mdf3.version) # get the float signal sig = mdf3.get('Float64_Signal') print(sig) # cut measurement from 0.3s to end of measurement mdf4_cut = mdf4.cut(start=0.3) mdf4_cut.get('Float64_Signal').plot() # cut measurement from start of measurement to 0.4s mdf4_cut = mdf4.cut(stop=0.45) mdf4_cut.get('Float64_Signal').plot() # filter some signals from the file
timestamps=timestamps, name='Float64_Signal', unit='f8') # create empty MDf version 4.00 file mdf4 = MDF(version='4.00') # append the 3 signals to the new file signals = [s_uint8, s_int32, s_float64] mdf4.append(signals, 'Created by Python') # save new file mdf4.save('my_new_file.mf4') # convert new file to mdf version 3.10 with load_measured_data=False mdf3 = mdf4.convert(to='3.10', load_measured_data=False) print(mdf3.version) # prints >>> 3.10 # get the float signal sig = mdf3.get('Float64_Signal') print(sig) # prints >>> Signal { name="Float64_Signal": s=[-20 -10 0 10 20] t=[ 0.1 0.2 0.30000001 0.40000001 0.5 ] unit="f8" conversion=None } # cut measurement from 0.3s to end of measurement mdf4_cut = mdf4.cut(start=0.3) mdf4_cut.get('Float64_Signal').plot() # cut measurement from start of measurement to 0.4s mdf4_cut = mdf4.cut(stop=0.45) mdf4_cut.get('Float64_Signal').plot()