.setValue( Messages.getString( "BarChart.Txt.DefaultBarChartTitle" ) );
.setValue( CHART_TITLE );
	public Chart getModel( String sSubType, Orientation orientation,			String sDimension, Chart currentChart )	{		ChartWithAxes newChart = null;		if ( currentChart != null )		{			newChart = (ChartWithAxes) getConvertedChart( currentChart,					sSubType,					orientation,					sDimension );			if ( newChart != null )			{				return newChart;			}		}		newChart = ChartWithAxesImpl.create( );		newChart.setType( TYPE_LITERAL );		newChart.setSubType( sSubType );		newChart.setOrientation( orientation );		newChart.setDimension( getDimensionFor( sDimension ) );		newChart.setUnits( "Points" ); //$NON-NLS-1$		( (Axis) newChart.getAxes( ).get( 0 ) ).setOrientation( Orientation.HORIZONTAL_LITERAL );		( (Axis) newChart.getAxes( ).get( 0 ) ).setType( AxisType.TEXT_LITERAL );		( (Axis) newChart.getAxes( ).get( 0 ) ).setCategoryAxis( true );		SeriesDefinition sdX = SeriesDefinitionImpl.create( );		Series categorySeries = SeriesImpl.create( );		sdX.getSeries( ).add( categorySeries );		sdX.getSeriesPalette( ).update( 0 );		( (Axis) newChart.getAxes( ).get( 0 ) ).getSeriesDefinitions( )				.add( sdX );		newChart.getTitle( )				.getLabel( )				.getCaption( )				.setValue( Messages.getString( "BarChart.Txt.DefaultBarChartTitle" ) ); //$NON-NLS-1$		if ( sSubType.equalsIgnoreCase( "Stacked" ) ) //$NON-NLS-1$		{			( (Axis) ( (Axis) newChart.getAxes( ).get( 0 ) ).getAssociatedAxes( )					.get( 0 ) ).setOrientation( Orientation.VERTICAL_LITERAL );			( (Axis) ( (Axis) newChart.getAxes( ).get( 0 ) ).getAssociatedAxes( )					.get( 0 ) ).setType( AxisType.LINEAR_LITERAL );			SeriesDefinition sdY = SeriesDefinitionImpl.create( );			sdY.getSeriesPalette( ).update( 0 );			Series valueSeries = BarSeriesImpl.create( );			valueSeries.getLabel( ).setVisible( true );			valueSeries.setStacked( true );			sdY.getSeries( ).add( valueSeries );			( (Axis) ( (Axis) newChart.getAxes( ).get( 0 ) ).getAssociatedAxes( )					.get( 0 ) ).getSeriesDefinitions( ).add( sdY );		}		else if ( sSubType.equalsIgnoreCase( "Percent Stacked" ) ) //$NON-NLS-1$		{			( (Axis) ( (Axis) newChart.getAxes( ).get( 0 ) ).getAssociatedAxes( )					.get( 0 ) ).setOrientation( Orientation.VERTICAL_LITERAL );			( (Axis) ( (Axis) newChart.getAxes( ).get( 0 ) ).getAssociatedAxes( )					.get( 0 ) ).setType( AxisType.LINEAR_LITERAL );			( (Axis) ( (Axis) newChart.getAxes( ).get( 0 ) ).getAssociatedAxes( )					.get( 0 ) ).setPercent( true );			SeriesDefinition sdY = SeriesDefinitionImpl.create( );			sdY.getSeriesPalette( ).update( 0 );			Series valueSeries = BarSeriesImpl.create( );			valueSeries.getLabel( ).setVisible( true );			valueSeries.setStacked( true );			( (BarSeries) valueSeries ).setStacked( true );			sdY.getSeries( ).add( valueSeries );			( (Axis) ( (Axis) newChart.getAxes( ).get( 0 ) ).getAssociatedAxes( )					.get( 0 ) ).getSeriesDefinitions( ).add( sdY );		}		else if ( sSubType.equalsIgnoreCase( "Side-by-side" ) ) //$NON-NLS-1$		{			( (Axis) ( (Axis) newChart.getAxes( ).get( 0 ) ).getAssociatedAxes( )					.get( 0 ) ).setOrientation( Orientation.VERTICAL_LITERAL );			( (Axis) ( (Axis) newChart.getAxes( ).get( 0 ) ).getAssociatedAxes( )					.get( 0 ) ).setType( AxisType.LINEAR_LITERAL );			SeriesDefinition sdY = SeriesDefinitionImpl.create( );			sdY.getSeriesPalette( ).update( 0 );			Series valueSeries = BarSeriesImpl.create( );			valueSeries.getLabel( ).setVisible( true );			( (BarSeries) valueSeries ).setStacked( false );			sdY.getSeries( ).add( valueSeries );			( (Axis) ( (Axis) newChart.getAxes( ).get( 0 ) ).getAssociatedAxes( )					.get( 0 ) ).getSeriesDefinitions( ).add( sdY );		}		if ( sDimension.equals( THREE_DIMENSION_TYPE ) )		{			newChart.setRotation( Rotation3DImpl.create( new Angle3D[]{					Angle3DImpl.create( -20, 45, 0 )			} ) );						newChart.setUnitSpacing( 50 );			newChart.getPrimaryBaseAxes( )[0].getAncillaryAxes( ).clear( );			Axis zAxisAncillary = AxisImpl.create( Axis.ANCILLARY_BASE );			zAxisAncillary.setTitlePosition( Position.BELOW_LITERAL );			zAxisAncillary.getTitle( )					.getCaption( )					.setValue( Messages.getString( "ChartWithAxesImpl.Z_Axis.title" ) ); //$NON-NLS-1$			zAxisAncillary.getTitle( ).setVisible( true );			zAxisAncillary.setPrimaryAxis( true );			zAxisAncillary.setLabelPosition( Position.BELOW_LITERAL );			zAxisAncillary.setOrientation( Orientation.HORIZONTAL_LITERAL );			zAxisAncillary.getOrigin( ).setType( IntersectionType.MIN_LITERAL );			zAxisAncillary.getOrigin( )					.setValue( NumberDataElementImpl.create( 0 ) );			zAxisAncillary.getTitle( ).setVisible( false );			zAxisAncillary.setType( AxisType.TEXT_LITERAL );			newChart.getPrimaryBaseAxes( )[0].getAncillaryAxes( )					.add( zAxisAncillary );			newChart.getPrimaryOrthogonalAxis( newChart.getPrimaryBaseAxes( )[0] )					.getTitle( )					.getCaption( )					.getFont( )					.setRotation( 0 );			SeriesDefinition sdZ = SeriesDefinitionImpl.create( );			sdZ.getSeriesPalette( ).update( 0 );			sdZ.getSeries( ).add( SeriesImpl.create( ) );			zAxisAncillary.getSeriesDefinitions( ).add( sdZ );		}		addSampleData( newChart );		return newChart;	}