void fake_data() { /* use this to create fake data to test your analysis, before you try real data */ /* do we get these parameters back out again? */ double true_sigma1 = 9.0; double true_mean1 = 37.0; double true_sigma2 = 25.0; double true_mean2 = 100.0; double true_q = 0.80; /* how many data in all? */ int numdata = 99; /* create internal table to hold data */ table_create("fakedata"); table_addcolumn("fakedata","y"); for(int ii=0 ; ii<numdata ; ii++) { /* first, randomly choose normal1, or normal 2 */ int choice; if(random(0.0,1.0)<true_q) choice = 1; else choice = 2; /* now draw random value for y from the appropriate normal distribution */ double y; if(choice==1) y = normal_draw(true_mean1,true_sigma1); if(choice==2) y = normal_draw(true_mean2,true_sigma2); /* write the y value to the data (as if reading real data) */ table_writevalue("fakedata","y",ii,y); } /* output data to use later on */ table_output("fakedata","./workspace/eg03_mixednormal_fakedata.txt"); return; }
int extend_draw(dxO& dxo)override{ normal_draw(dxo); try{ auto Data = GPSData;//inquiry_getGPSData(); auto Time = Data.getTime(); dxo.draw(Pint(80, 30), dxoStrP(Pint(145, 20), (boost::format("N:%.4f") % Data.getPos().y).str(), getTimeStrClr(Time))); dxo.draw(Pint(80, 55), dxoStrP(Pint(145, 20), (boost::format("E:%.4f") % Data.getPos().x).str(), getTimeStrClr(Time))); dxo.draw(Pint(80, 80), dxoStrP(Pint(145, 20), (boost::format("H:%.4f") % Data.getHeight()).str(), getTimeStrClr(Time))); dxo.draw(Pint(5, 55), dxoStrP(Pint(70, 20), (boost::format("GPS#:%d") % Data.getUseGPS()).str(), getTimeStrClr(Time))); //dxo.draw(Pint(5,80),dxoStrP(Pint(70,20),(boost::format("Fail:%d")%static_cast<int>(Data.getFail())).str(),getTimeStrClr(Time))); } catch(const hmLib::inquiries::unconnected_exception&){ dxo.draw(Pint(80, 30), dxoStrP(Pint(145, 20), "NoCnct", getClr(error, strobj))); dxo.draw(Pint(80, 55), dxoStrP(Pint(145, 20), "NoCnct", getClr(error, strobj))); dxo.draw(Pint(80, 80), dxoStrP(Pint(145, 20), "NoCnct", getClr(error, strobj))); dxo.draw(Pint(5, 55), dxoStrP(Pint(70, 20), "NoCnct", getClr(error, strobj))); //dxo.draw(Pint(5,80),dxoStrP(Pint(70,20),"NoCnct",getClr(error,strobj))); } return 0; }
int extend_draw(dxO& dxo)override{ return normal_draw(dxo); }
int extend_draw(dxO& dxo)override{ // draw normal_draw(dxo); return 0; }