Ejemplo n.º 1
0
	def generatePlotPanel(self, plotTitle, listData, showLegend, showTooltip):
		"""
		1) Create a PieDataset
		2) Create a PieChart (or  Create a PiePlot and put it in a JFreeChart)
		3) Put the PieChart in a ChartPanel
		"""
		# Get a dictionary of value occurence in the list {value1:count, value2:count...}
		dataDico = Counter(listData)
		#print dataDico # value: counts OK
		 
		# Create a Pie dataset from the dicoData
		pieDataset = DefaultPieDataset() 
		for key, value in dataDico.items(): 
			#print key, value 
			pieDataset.setValue(key, value) 
				 
		# Create an instance of JFreeChart 	
		urls = False
		chart = ChartFactory.createPieChart(plotTitle, pieDataset, showLegend, showTooltip, urls) 
		
		# Alternative way
		#piePlot = PiePlot(pieDataset)
		#chart   = JFreeChart(plotTitle, piePlot)
		
		return ChartPanel(chart)
Ejemplo n.º 2
0
def pie(data, name='', trid=False):
  """
  Creates a pie chart.

  *data* is a ``dict`` whose keys are category names and values are numeric 
  values.
  
  Setting *trid* to ``True`` results in a 3D char.
  """        
  dataset = DefaultPieDataset();    
  for k,v in data.iteritems():        
    dataset.setValue(k, v) 
  if trid:
    chart = ChartFactory.createPieChart3D(name, dataset, True, True, False)
  else:
    chart = ChartFactory.createPieChart(name, dataset, True, True, False)
  return Chart(chart)