currentChart.getTitle( ).getLabel( ).getCaption( ).setValue( CHART_TITLE );
	private Chart getConvertedChart( Chart currentChart, String sNewSubType,			String sNewDimension )	{		Chart helperModel = (Chart) EcoreUtil.copy( currentChart );		if ( ( currentChart instanceof ChartWithAxes ) )		{			// Create a new instance of the correct type and set initial			// properties			currentChart = ChartWithoutAxesImpl.create( );			currentChart.setType( TYPE_LITERAL );			currentChart.setSubType( sNewSubType );			currentChart.setDimension( getDimensionFor( sNewDimension ) );			// Copy generic chart properties from the old chart			currentChart.setBlock( helperModel.getBlock( ) );			currentChart.setDescription( helperModel.getDescription( ) );			currentChart.setGridColumnCount( helperModel.getGridColumnCount( ) );			if ( !currentChart.getType( ).equals( LineChart.TYPE_LITERAL )					&& !currentChart.getType( ).equals( BarChart.TYPE_LITERAL )					&& !currentChart.getType( ).equals( AreaChart.TYPE_LITERAL ) )			{				currentChart.setSampleData( getConvertedSampleData( helperModel.getSampleData( ) ) );			}			currentChart.setScript( helperModel.getScript( ) );			if ( helperModel.isSetSeriesThickness( ) )			{				currentChart.setSeriesThickness( helperModel.getSeriesThickness( ) );			}			else			{				currentChart.setSeriesThickness( 15 );			}			currentChart.setUnits( helperModel.getUnits( ) );			if ( helperModel.getGridColumnCount( ) > 0 )			{				currentChart.setGridColumnCount( helperModel.getGridColumnCount( ) );			}			else			{				currentChart.setGridColumnCount( 1 );			}			// Copy series definitions from old chart			( (ChartWithoutAxes) currentChart ).getSeriesDefinitions( )					.add( ( (Axis) ( (ChartWithAxes) helperModel ).getAxes( )							.get( 0 ) ).getSeriesDefinitions( ).get( 0 ) );			Vector vOSD = new Vector( );			EList axesOrthogonal = ( (Axis) ( (ChartWithAxes) helperModel ).getAxes( )					.get( 0 ) ).getAssociatedAxes( );			for ( int i = 0; i < axesOrthogonal.size( ); i++ )			{				EList osd = ( (Axis) axesOrthogonal.get( i ) ).getSeriesDefinitions( );				for ( int j = 0; j < osd.size( ); j++ )				{					SeriesDefinition sd = (SeriesDefinition) osd.get( j );					Series series = sd.getDesignTimeSeries( );					sd.getSeries( ).clear( );					sd.getSeries( ).add( getConvertedSeries( series ) );					vOSD.add( sd );				}			}			( (SeriesDefinition) ( (ChartWithoutAxes) currentChart ).getSeriesDefinitions( )					.get( 0 ) ).getSeriesDefinitions( ).clear( );			( (SeriesDefinition) ( (ChartWithoutAxes) currentChart ).getSeriesDefinitions( )					.get( 0 ) ).getSeriesDefinitions( ).addAll( vOSD );			// Set the legend item type t Categories to have the chart behave as			// expected by default.			currentChart.getLegend( )					.setItemType( LegendItemType.CATEGORIES_LITERAL );		}		else if ( currentChart instanceof ChartWithoutAxes )		{			if ( currentChart.getType( ).equals( TYPE_LITERAL ) )			{				currentChart.setSubType( sNewSubType );				if ( !currentChart.getDimension( )						.equals( getDimensionFor( sNewDimension ) ) )				{					currentChart.setDimension( getDimensionFor( sNewDimension ) );				}				if ( !currentChart.isSetSeriesThickness( ) )				{					currentChart.setSeriesThickness( 15 );				}			}			else			{				// Create a new instance of the correct type and set initial				// properties				currentChart = ChartWithoutAxesImpl.create( );				currentChart.setType( TYPE_LITERAL );				currentChart.setSubType( sNewSubType );				currentChart.setDimension( getDimensionFor( sNewDimension ) );				// Copy generic chart properties from the old chart				currentChart.setBlock( helperModel.getBlock( ) );				currentChart.setDescription( helperModel.getDescription( ) );				currentChart.setGridColumnCount( helperModel.getGridColumnCount( ) );				currentChart.setSampleData( helperModel.getSampleData( ) );				currentChart.setScript( helperModel.getScript( ) );				currentChart.setSeriesThickness( helperModel.getSeriesThickness( ) );				currentChart.setUnits( helperModel.getUnits( ) );				// Clear existing series definitions				( (ChartWithoutAxes) currentChart ).getSeriesDefinitions( )						.clear( );				// Copy series definitions				( (ChartWithoutAxes) currentChart ).getSeriesDefinitions( )						.addAll( ( (ChartWithoutAxes) helperModel ).getSeriesDefinitions( ) );				// Update the series				EList seriesdefinitions = ( (SeriesDefinition) ( (ChartWithoutAxes) currentChart ).getSeriesDefinitions( )						.get( 0 ) ).getSeriesDefinitions( );				Series series;								for ( int j = 0; j < seriesdefinitions.size( ); j++ )				{					series = ( (SeriesDefinition) seriesdefinitions.get( j ) ).getDesignTimeSeries( );					series = getConvertedSeries( series );					// Clear any existing series					( (SeriesDefinition) seriesdefinitions.get( j ) ).getSeries( )							.clear( );					// Add the new series					( (SeriesDefinition) seriesdefinitions.get( j ) ).getSeries( )							.add( series );				}				currentChart.getLegend( )						.setItemType( LegendItemType.CATEGORIES_LITERAL );			}		}		else		{			return null;		}		return currentChart;	}