
Hi deepak ihave draw a piechart using jfreechart with tooltip.Now i need click event (chartMouseClicked(ChartMouseEvent event)) in this chart. can u help me plz....

Java JFreechart MouseEvent
import java.awt.*;
import javax.swing.*;
import org.jfree.ui.*;
import org.jfree.chart.*;
import org.jfree.chart.plot.*;
import org.jfree.data.general.*;
import org.jfree.chart.entity.*;
public class PieChart extends ApplicationFrame implements ChartMouseListener {
private JFreeChart chart;
private PiePlot plot;
private int angle=270;
private static double explodePercent = 0.99;
private static long count=0;
public PieChart(String title){
super(title);
this.chart = ChartFactory.createPieChart("Pie Chart Demo",createDataset(), true, true, false);
this.plot = (PiePlot) chart.getPlot();
this.plot.setSectionOutlinesVisible(false);
this.plot.setNoDataMessage("No data available");
this.plot.setBackgroundAlpha(0.2f);
this.plot.setBackgroundPaint(Color.WHITE);
this.angle=270;
ChartPanel chartpanel = new ChartPanel(chart, false, false, false, false, false);
chartpanel.setVisible(true);
chartpanel.addChartMouseListener(this);
chartpanel.setPreferredSize(new Dimension(500, 270));
setContentPane(chartpanel);
}
private static PieDataset createDataset() {
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("One", new Double(10.0));
dataset.setValue("Two", new Double(20.0));
dataset.setValue("Three", new Double(30.0));
dataset.setValue("Four", new Double(40.0));
dataset.setValue("Five", new Double(10.0));
return dataset;
}
private static JFreeChart createChart(PieDataset dataset) {
JFreeChart chart = ChartFactory.createPieChart3D("Pie Chart Demo",dataset, true, true,false);
PiePlot plot = (PiePlot) chart.getPlot();
plot.setSectionOutlinesVisible(false);
plot.setNoDataMessage("No data available");
plot.setBackgroundAlpha(0.2f);
return chart;
}
public static JPanel createDemoPanel() {
JFreeChart chart = createChart(createDataset());
ChartPanel chartpanel = new ChartPanel(chart, false, false, false, false, false);
chartpanel.setVisible(true);
chartpanel.setPreferredSize(new Dimension(500, 270));
return new JPanel();
}
public static void main(String[] args) {
PieChart demo = new PieChart("Pie Chart");
demo.pack();
RefineryUtilities.centerFrameOnScreen(demo);
demo.setVisible(true);
}
public void chartMouseClicked(ChartMouseEvent chartmouseevent){
ChartEntity chartentity = chartmouseevent.getEntity();
if (chartentity != null){
System.out.println("Mouse clicked: " + chartentity.toString());
}
else
System.out.println("Mouse clicked: null entity.");
}
public void chartMouseMoved(ChartMouseEvent chartmouseevent){
}
}
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.