<代码级="蟒蛇"> uic.loadUi(“%S / UI / frm_profile.ui”%DIR,个体经营)< /码> PRE>
相关事件和<前>&LT方法;代码级=&QUOT;蟒蛇&QUOT;&GT; self.connect(self.bt_ok,SIGNAL(&QUOT;点击()&QUOT;),self.bt_ok_clicked)self.connect(self.bt_new,SIGNAL(&QUOT;点击()&QUOT;),self.bt_new_clicked)self.connect( self.bt_addProfile,SIGNAL(&QUOT;点击()&QUOT;),self.bt_addProfile_clicked)self.connect(self.bt_cancel,SIGNAL(&QUOT;点击()&QUOT;),self.bt_cancel_clicked)self.connect(self.bt_graph, SIGNAL(&QUOT;点击()&QUOT;),self.bt_graph_clicked)&LT; /码&GT; PRE>
并显示
<前>&LT;代码级=&QUOT;蟒蛇&QUOT;&GT; self.formProfile = FormProfile()self.formProfile.show()&LT; /码&GT; PRE>
图 H5>
![]()
图表库使用matplotlib。
在这里,示例代码 B> <前>&LT;代码级=&QUOT;蟒蛇&QUOT;&GT;进口matplotlib.pyplot为PLT高清bt_averageSpeed_clicked(个体经营):... plt.plot_date(日期,价值观,“B ')plt.plot_date(日期,价值观,'博')averageSpeed = len个(值)&GT; 0和(拉姆达:总和(值)/ LEN(值))或(拉姆达:0)plt.xlabel(U&QUOT;高平均速度=%.2f米/秒或%.2f公里/小时&QUOT;%(浮动( averageSpeed()),浮点(averageSpeed())/ 1000 * 3600))plt.ylabel(U&QUOT;平均车速(米/秒)&QUOT;)plt.title(U&QUOT;速度曲线%S&QUOT;%dm.getProfileNameById( self.profileId))plt.gca()。xaxis.set_major_formatter(mdates.DateFormatter(“%D /%M /%Y'))plt.gcf()。autofmt_xdate()plt.grid(真)plt.show( )&LT; /码&GT; PRE>
我想指出,以显示西里尔字体支持需要连接。
<前>&LT;代码级=&QUOT;蟒蛇&QUOT;&GT;从matplotlib进口RC字体= {'家庭':'德罗伊德桑“,”重量“:”正常“,”大小“:14} RC(”字体“, **字体)和LT; /码&GT; PRE>
从Arduino的读取数据 H5>
为了这个目的,使用该库的串行 B>。
下面的代码在一个单独的线程中运行。
<前>&LT;代码级=&QUOT;蟒蛇&QUOT;&GT;高清getDataFromSimulator():全球valueFromSimulator,isRunnig SER = serial.Serial('的/ dev / ttyACM0“,9600),而isRunnig:值= ser.readline()试试: valueFromSimulator = INT(值),除了:通&LT; /码&GT; PRE>
可变的 valueFromSimulator 的其他线程仅用于阅读。
此次推出的两个流。
<前>&LT;代码级=&QUOT;蟒蛇&QUOT;&GT; T1 = threading.Thread(目标=主,的args =(self.profileId,self.distanceId))T2 = threading.Thread(目标= getDataFromSimulator)t2.start( )t1.start()&LT; /码&GT; PRE>
质量差视频演示 H4>
由于订购。
我会很高兴的意见,批评和建议。 I>
这里所有的源代码
来源: habrahabr.ru/post/217891/