# title: Fix Units # label: fix the application units by resetting the units of each y and z axis to the defaults of the first plot element. from org.virbo.dataset import SemanticOps from org.das2.datum import UnitsUtil from org.virbo.autoplot import RenderType #u= Units.lookupUnits('nT*1') # used for testing for p in dom.plots: pes= dom.controller.getPlotElementsFor(p) if ( len(pes)==0 ): continue pe= pes[0] u= pe.plotDefaults.yaxis.range.getUnits() if ( UnitsUtil.isRatioMeasurement(u) ): r= p.yaxis.range p.yaxis.controller.dasAxis.resetRange( DatumRange( r.min().value(), r.max().value(), u ) ) else: print 'unit is not ratio scale unit: '+u if ( p.zaxis.visible ): u= pe.plotDefaults.zaxis.range.getUnits() if ( UnitsUtil.isRatioMeasurement(u) ): r= p.zaxis.range p.zaxis.controller.dasAxis.resetRange( DatumRange( r.min().value(), r.max().value(), u ) ) else: print 'unit is not ratio scale unit: '+u