-2

I am using the API JFreeChart but cant get it working no matter what I try I am trying:

    DefaultPieDataset pieDataset = new DefaultPieDataset();
    pieDataset.setValue("JavaWorld", new Integer(75));
    pieDataset.setValue("Other", new Integer(25));
    JFreeChart chart = ChartFactory.createPieChart
                 ("Sample Pie Chart",   // Title
                  pieDataset           // Dataset
                 );

    BufferedImage image = chart.createBufferedImage(500,300);
    JLabel lblChart = new JLabel();
    lblChart.setIcon(new ImageIcon(image));
    MyPanel.add(lblChart);
  • possible duplicate of [Adding a JChart to a panel](http://stackoverflow.com/questions/23045857/adding-a-jchart-to-a-panel) – trashgod Apr 14 '14 at 03:36

1 Answers1

0

It's not clear what you're trying to do.

Here's a working sample that uses most your code and a ChartPanel.

import java.awt.EventQueue;

import javax.swing.JFrame;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.data.general.DefaultPieDataset;

public class PieFrame extends JFrame {

    public static void main(String... args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                new PieFrame().setVisible(true);
            }
        });
    }

    public PieFrame() {
        DefaultPieDataset pieDataset = new DefaultPieDataset();
        pieDataset.setValue("JavaWorld", new Integer(75));
        pieDataset.setValue("Other", new Integer(25));
        JFreeChart chart = ChartFactory.createPieChart("Sample Pie",pieDataset);
        ChartPanel cPanel = new ChartPanel(chart);
        getContentPane().add(cPanel);
        setSize(200,200);
    }
}