我想用Root绘制时间数据图。那些来自传感器,以10Hz更新。 root可以应对实时更新图吗?
在根提示符下,以下似乎有效:
#include <unistd.h>
TH1F hist("hist","hist",100, -10,10);
TCanvas c;
hist.Draw()
for (int i = 0 ; i < 10000; i++ ) {
hist.FillRandom("gaus",10);
hist.Draw();
usleep(100000);
c.Update();
}
我还没有看到以10Hz更新根显示的实际应用程序,但是基于已编译的检测器监视应用程序中的root,存在较低刷新率的“实时”绘图。 (我实际上并不知道常用的刷新率,但如果我不得不打赌它会介于1Hz到10Hz之间)。
编辑(编译应用程序的示例)
#include <TApplication.h>
#include <TCanvas.h>
#include <TH1F.h>
#include <unistd.h>
int main(int argc, char** argv) {
TApplication theApp("App", &argc, argv);
TH1F hist("hist", "hist", 100, -10, 10);
TCanvas c;
hist.Draw();
for (int i = 0; i < 10000; i++) {
hist.FillRandom("gaus", 10);
hist.Draw();
usleep(100000);
c.Update();
}
return 0;
}