sdOrthogonal.setSeriesDefinitionIndex( list.size( ) );
sdOrthogonal.setSeriesDefinitionIndex( ChartUIUtil.getLastSeriesIndexWithinAxis( getChart( ), axisIndex ) + 1 );
	protected void addNewSeriesDefinition( )	{		// Create a series definition without data definition		SeriesDefinition sdTmp = SeriesDefinitionImpl.create( );		sdTmp.getSeriesPalette( ).update( -seriesDefns.size( ) );		sdTmp.getSeries( )				.add( EcoreUtil.copy( ( (SeriesDefinition) seriesDefns.get( 0 ) ).getDesignTimeSeries( ) ) );		// Add grouping query of the first series definition		sdTmp.setQuery( (Query) EcoreUtil.copy( ( (SeriesDefinition) seriesDefns.get( 0 ) ).getQuery( ) ) );		cleanDataDefinition( sdTmp );		sdTmp.eAdapters( )				.addAll( ( (SeriesDefinition) seriesDefns.get( 0 ) ).eAdapters( ) );		int firstIndex = getFirstIndexOfSameAxis( );		EList list = getChart( ).getSampleData( ).getOrthogonalSampleData( );		// Create a new OrthogonalSampleData instance from the existing one		OrthogonalSampleData sdOrthogonal = (OrthogonalSampleData) EcoreUtil.copy( (EObject) list.get( firstIndex ) );		sdOrthogonal.setSeriesDefinitionIndex( list.size( ) );		sdOrthogonal.eAdapters( ).addAll( getChart( ).getSampleData( )				.eAdapters( ) );		// Update the Sample Data without event fired.		boolean isNotificaionIgnored = ChartAdapter.isNotificationIgnored( );		ChartAdapter.ignoreNotifications( true );		list.add( sdOrthogonal );		ChartAdapter.ignoreNotifications( isNotificaionIgnored );		seriesDefns.add( sdTmp );	}