なぜか部屋にガイカーカウンターが落ちていて、遙か昔にプログラムを書いていたようで、せっかくなので置いておく。 みたところ、matplotlibでプロットするプログラムになっているようだ。
import datetime import serial import matplotlib.pyplot as plt import pandas as pd ser = serial.Serial('/dev/tty.usbserial-FTSBTSEU', baudrate=38400, dsrdtr=True) ser.read(2) df = pd.DataFrame(columns=['time', 'count']) df = df.set_index('time') plt.ion() fig, ax = plt.subplots() while True: # measure ser.read(1) t = datetime.datetime.now() df.loc[t] = 1 # aggs df_minutely = df.resample('1min').sum() # plot plt.cla() ax.set_title('RadiationCount - Geiger Counter Black Cat Systems GM-10') ax.set_xlabel('Time') ax.set_ylabel('Count') ax.set_ylim(0, df_minutely['count'].max()+1) df_minutely.plot(y='count', ax=ax) ax.plot_date(df_minutely.index.to_pydatetime(), df_minutely) plt.draw() plt.pause(0.1) ser.close()