一个适用于python的示波器
oscilloscope的Python项目详细描述
示波器
python专用示波器,工作原理™
功能
使用简单
importrandomfromtimeimportsleepfromoscilloscopeimportOscosc=Osc()@osc.signaldefsimple_random_signal(state):whileTrue:state.draw(random.random())sleep(0.1)osc.start()
给您这个
并行计算
每个osc.signal
都有自己的进程。
importrandomfromtimeimportsleepfromoscilloscopeimportOscosc=Osc(nrows=2,ncols=3)@osc.signaldefsignal1(state):whileTrue:state.draw((random.random())sleep(0.1)@osc.signaldefsignal2(state):whileTrue:state.draw(random.random(),row=1,col=2)sleep(0.1)osc.start()
给您这个
P.S.不要担心竞争条件,state.draw()
是原子的。(见zproc)
importrandomfromtimeimportsleepfromoscilloscopeimportOsc# adjust window_sec and intensity to improve visibilityosc=Osc(window_sec=10,intensity=1)@osc.signaldefincreasing_signal(state):delta=1whileTrue:state.draw(random.randint(-delta,delta))delta+=5sleep(0.01)osc.start()
给您这个
自动标准化
importrandomfromtimeimportsleepfromoscilloscopeimportOsc# turn on normalizationosc=Osc(normalize=True)@osc.signaldefincreasing_signal(state):delta=1whileTrue:state.draw(random.randint(-delta,delta))delta+=5sleep(0.01)osc.start()
给您这个
这是和[先前的](自动标准化)信号相同的信号, 但它看起来很像一个简单的例子,因为我们打开了标准化!
现在,y轴将显示,此时遇到的最大振幅%,而不是原始值。
安装
pip install oscilloscope
麻省理工学院执照
仅限Python 3.6+。