# demo events bar from org.virbo.dsutil import DataSetBuilder from org.das2.datum import EnumerationUnits from random import randrange from java.io import FileInputStream dsb= DataSetBuilder(2,100,4) print dsb tu= Units.t2000 dtu= Units.seconds evu= EnumerationUnits.create('S/C Events') dsb.putValue( -1, 0, tu.parse('2003-05-10T05:00').doubleValue(tu) ) dsb.putValue( -1, 1, dtu.parse('100 s' ).doubleValue(dtu) ) dsb.putValue( -1, 2, 0xFF0000 ) dsb.putValue( -1, 3, evu.createDatum('test EFA').doubleValue(evu) ) dsb.nextRecord() dsb.putValue( -1, 0, tu.parse('2003-05-10T05:20').doubleValue(tu) ) dsb.putValue( -1, 1, dtu.parse('100 s' ).doubleValue(dtu) ) dsb.putValue( -1, 2, 0xFF0000 ) dsb.putValue( -1, 3, evu.createDatum('test EFA-2').doubleValue(evu) ) dsb.nextRecord() dsb.putValue( -1, 0, tu.parse('2003-05-10T05:50').doubleValue(tu) ) dsb.putValue( -1, 1, dtu.parse('300 s' ).doubleValue(dtu) ) dsb.putValue( -1, 2, 0x0000FF ) dsb.putValue( -1, 3, evu.createDatum('test AEFA').doubleValue(evu) ) dsb.nextRecord() tuv= tu.parse('2003-05-10T06:00').doubleValue(tu) for i in range(10): dsb.putValue( -1, 0, tuv ) dt= randrange(50,150) dsb.putValue( -1, 1, dt ) tuv= tuv + dt + 500 dsb.putValue( -1, 2, 0x00FFFF ) dsb.putValue( -1, 3, evu.createDatum('broke').doubleValue(evu) ) dsb.nextRecord() ds= dsb.getDataSet() from org.virbo.dataset import DDataSet bds= DDataSet.createRank2( 4, 0 ) bds.putProperty( 'NAME__0', 'Time' ) bds.putProperty( 'UNITS__0', tu ) bds.putProperty( 'NAME__1', 'Duration' ) bds.putProperty( 'UNITS__1', dtu ) bds.putProperty( 'NAME__2', 'Color' ) bds.putProperty( 'FORMAT__2', '0x%08x' ) # format as hex bds.putProperty( 'NAME__3', 'Event' ) bds.putProperty( 'UNITS__3', evu ) ds.putProperty( QDataSet.BUNDLE_1, bds ) result= ds