Program: 139895
Project: 139895
Buggy source:
/** 
 * Method "createBubbleChart".
 * @param indic the indicator
 * @param numericColumn the analyzed numeric column
 * @return the bubble chart
 */
public static JFreeChart createBubbleChart(final ColumnSetMultiValueIndicator indic,Column numericColumn){
  final Map<String,ValueAggregator> createXYZDatasets=ChartDatasetUtils.createXYZDatasets(indic,numericColumn);
  DefaultXYZDataset dataset=new DefaultXYZDataset();
  final Iterator<String> iterator=createXYZDatasets.keySet().iterator();
  while (iterator.hasNext()) {
    final String next=iterator.next();
    createXYZDatasets.get(next).addSeriesToXYZDataset(dataset,next);
  }
  String chartName=DefaultMessagesImpl.getString("String_Node_Str",numericColumn.getName());
  JFreeChart chart=TopChartFactory.createBubbleChart(chartName,DefaultMessagesImpl.getString("String_Node_Str"),DefaultMessagesImpl.getString("String_Node_Str"),dataset,PlotOrientation.HORIZONTAL,true,true,true);
  final XYPlot plot=(XYPlot)chart.getPlot();
  final XYItemRenderer renderer=plot.getRenderer();
  renderer.setBaseToolTipGenerator(new StandardXYZToolTipGenerator(){
    @Override protected Object[] createItemArray(    XYZDataset dset,    int series,    int item){
      final Comparable<?> seriesKey=dset.getSeriesKey(series);
      final String seriesK=String.valueOf(seriesKey);
      final ValueAggregator valueAggregator=createXYZDatasets.get(seriesKey);
      String label=valueAggregator.getLabels(seriesK).get(item);
      final Object[] itemArray=super.createItemArray(dset,series,item);
      itemArray[0]=label;
      return itemArray;
    }
  }
);
  return chart;
}

Fixed version (ground truth):
/** 
 * Method "createBubbleChart".
 * @param indic the indicator
 * @param numericColumn the analyzed numeric column
 * @return the bubble chart
 */
public static JFreeChart createBubbleChart(final ColumnSetMultiValueIndicator indic,Column numericColumn){
  final Map<String,ValueAggregator> createXYZDatasets=ChartDatasetUtils.createXYZDatasets(indic,numericColumn);
  DefaultXYZDataset dataset=new DefaultXYZDataset();
  final Iterator<String> iterator=createXYZDatasets.keySet().iterator();
  while (iterator.hasNext()) {
    final String next=iterator.next();
    createXYZDatasets.get(next).addSeriesToXYZDataset(dataset,next);
  }
  String chartName=DefaultMessagesImpl.getString("String_Node_Str",numericColumn.getName());
  JFreeChart chart=TopChartFactory.createBubbleChart(chartName,DefaultMessagesImpl.getString("String_Node_Str"),DefaultMessagesImpl.getString("String_Node_Str"),dataset,PlotOrientation.HORIZONTAL,true,true,true);
  final XYPlot plot=(XYPlot)chart.getPlot();
  final XYItemRenderer renderer=plot.getRenderer();
  renderer.setBaseToolTipGenerator(new StandardXYZToolTipGenerator(){
    private static final long serialVersionUID=1L;
    @Override protected Object[] createItemArray(    XYZDataset dset,    int series,    int item){
      final Comparable<?> seriesKey=dset.getSeriesKey(series);
      final String seriesK=String.valueOf(seriesKey);
      final ValueAggregator valueAggregator=createXYZDatasets.get(seriesKey);
      String label=valueAggregator.getLabels(seriesK).get(item);
      final Object[] itemArray=super.createItemArray(dset,series,item);
      itemArray[0]=label;
      itemArray[1]="String_Node_Str" + itemArray[1];
      itemArray[2]="String_Node_Str" + itemArray[2];
      itemArray[3]="String_Node_Str" + itemArray[3];
      return itemArray;
    }
  }
);
  return chart;
}