/** * Create a new StackedAreaChart. * @param group the data group to layout * @param field the data field in which to store computed polygons * @param columns the various data fields, in sorted order, that * should be referenced for each consecutive point of a stack layer * @param threshold height threshold under which stacks should not * be made visible. */ public StackedAreaChart(String group, String field, String[] columns, double threshold) { super(group); this.columns = columns; baseline = new double[columns.length]; peaks = new double[columns.length]; poly = new float[4*columns.length]; m_field = field; m_start = PrefuseLib.getStartField(field); m_end = PrefuseLib.getEndField(field); setThreshold(threshold); m_model = new NumberRangeModel(0,1,0,1); }
/** * Compute a quantitative axis layout. */ protected void numericalLayout(TupleSet ts) { if ( !m_modelSet ) { m_dist[0] = DataLib.min(ts, m_field).getDouble(m_field); m_dist[1] = DataLib.max(ts, m_field).getDouble(m_field); double lo = m_dist[0], hi = m_dist[1]; if ( m_model == null ) { m_model = new NumberRangeModel(lo, hi, lo, hi); } else { ((NumberRangeModel)m_model).setValueRange(lo, hi, lo, hi); } } else { m_dist[0] = ((Number)m_model.getLowValue()).doubleValue(); m_dist[1] = ((Number)m_model.getHighValue()).doubleValue(); } Iterator iter = m_vis.items(m_group, m_filter); while ( iter.hasNext() ) { VisualItem item = (VisualItem)iter.next(); double v = item.getDouble(m_field); double f = MathLib.interp(m_scale, v, m_dist); set(item, f); } }
/** * Constructor. */ public QuickFindPanel() { // Must use BoxLayout, as we want to control width // of all components. setLayout(new BoxLayout(this, BoxLayout.X_AXIS)); comboBox = createTextIndexComboBox(); configButton = createConfigButton(); label = createSearchLabel(); rangeModel = new NumberRangeModel(0.0, 0.0, 0.0, 0.0); rangeSlider = createSlider(rangeModel, comboBox); add(label); add(comboBox); add(rangeSlider); add(configButton); // Add Right Buffer, to prevent config button from occassionally // being partially obscured. add(Box.createHorizontalStrut(5)); }
rangeModel = new NumberRangeModel(numberIndex.getMinimumValue(), numberIndex.getMinimumValue(), numberIndex.getMinimumValue(), numberIndex.getMaximumValue());
rangeModel = new NumberRangeModel(0,0,0,0); Double max = (Double)theIndex.getMaximumValue(); rangeModel = new NumberRangeModel(lowB.doubleValue(),highB.doubleValue(),min.doubleValue(),max.doubleValue()); rangeModel = new NumberRangeModel(pFilter.getLowBound(),pFilter.getHighBound(), theIndex.getMinimumValue(),theIndex.getMaximumValue());
public void initModel() { if ( m_model != null ) m_model.removeChangeListener(m_listener); // set up data / selection model ValuedRangeModel model; if ( TypeLib.isNumericType(m_type) && !m_ordinal ) { Number min = (Number)DataLib.min(m_tuples, m_field).get(m_field); Number max = (Number)DataLib.max(m_tuples, m_field).get(m_field); model = new NumberRangeModel(min, max, min, max); } else { model = new ObjectRangeModel( DataLib.ordinalArray(m_tuples, m_field)); } m_model = model; m_model.addChangeListener(m_listener); }
long x_min = (long) ((Double)maindatatable.get(starttime_meta.getMinimumRow(), START_FIELD_NAME)).doubleValue(); long x_max = (long) ((Double)maindatatable.get(finishtime_meta.getMaximumRow(), END_FIELD_NAME)).doubleValue(); xaxis.setRangeModel(new NumberRangeModel(x_min,x_max,x_min,x_max)); float y_max = maindatatable.getFloat(ycoord_meta.getMaximumRow(),"ycoord"); yaxis.setRangeModel(new NumberRangeModel(0,y_max,0,y_max));