question: private XYPlot initializeUpperPlot ( ) { heapMemory = new YIntervalSeriesImproved ( "heap memory" ) ; YIntervalSeriesCollection yintervalseriescollection = new YIntervalSeriesCollection ( ) ; yintervalseriescollection . addSeries ( heapMemory ) ; DeviationRenderer renderer = new DeviationRenderer ( true , false ) ; renderer . setBaseShapesVisible ( true ) ; renderer . setSeriesStroke ( 0 , new BasicStroke ( 3.0f , BasicStroke . CAP_ROUND , BasicStroke . JOIN_ROUND ) ) ; renderer . setSeriesFillPaint ( 0 , new Color ( 255 , 200 , 200 ) ) ; renderer . setSeriesOutlineStroke ( 0 , new BasicStroke ( 2.0f ) ) ; renderer . setSeriesShape ( 0 , new Ellipse2D . Double ( - 2.5 , - 2.5 , 5.0 , 5.0 ) ) ; renderer . setBaseToolTipGenerator ( new StandardXYToolTipGenerator ( StandardXYToolTipGenerator . DEFAULT_TOOL_TIP_FORMAT , DateFormat . getDateTimeInstance ( ) , NumberFormat . getNumberInstance ( ) ) ) ; final NumberAxis rangeAxis = new NumberAxis ( "Heap / kbytes" ) ; rangeAxis . setRangeType ( RangeType . POSITIVE ) ; SystemInformationData systemData = ( SystemInformationData ) dataAccessService . getLastDataObject ( systemTemplate ) ; if ( systemData != null ) { double maxHeapUpperRange ; if ( systemData . getMaxHeapMemorySize ( ) != - 1 ) { maxHeapUpperRange = systemData . getMaxHeapMemorySize ( ) / 1024.0d ; } else if ( systemData . getInitHeapMemorySize ( ) != - 1 ) { maxHeapUpperRange = ( systemData . getInitHeapMemorySize ( ) * 2 ) / 1024.0d ; } else { maxHeapUpperRange = 728 * 1024 * 1024 ; } rangeAxis . setRange ( 0.0d , maxHeapUpperRange ) ; rangeAxis . setAutoRangeMinimumSize ( maxHeapUpperRange ) ; } final XYPlot subplot = new XYPlot ( yintervalseriescollection , null , rangeAxis , renderer ) ; subplot . setAxisOffset ( new RectangleInsets ( 5.0 , 5.0 , 5.0 , 5.0 ) ) ; subplot . setRangeAxisLocation ( AxisLocation . TOP_OR_LEFT ) ; subplot . setRangeCrosshairVisible ( true ) ; return subplot ; }
target:  Initializes the upper plot.