2011-11-20 25 views
1

我似乎無法操縱圖表本身。我不能改變大小和chartPanel = createChartPanel();不斷改寫成chartPanel = javax.swing.panel();如何在jfreechart,netbeans中調整此圖表的大小?

我試圖創建一個方法modificarGrafico,但沒有:

例子:http://www.flickr.com/photos/[email protected]/6371596517/

public JPanel createChartPanel(){ 
DefaultPieDataset pieDataset = new DefaultPieDataset(); 
pieDataset.setValue("Toyota", new Integer(10)); 
pieDataset.setValue("Nissan", new Integer(25)); 
pieDataset.setValue("Hummer", new Integer(5)); 
pieDataset.setValue("BMW", new Integer(10)); 
pieDataset.setValue("Honda", new Integer(30)); 
pieDataset.setValue("Ford", new Integer(20)); 
JFreeChart chart = ChartFactory.createPieChart3D("Ventas por Marca", pieDataset, true,   true, true); 
return new ChartPanel(chart); 
} 

public void modificarGrafico(){ 
//JDesktopPane dtp = new JDesktopPane(); 

    this.chartPanel.setSize(200,200); 
    this.chartPanel.setVisible(rootPaneCheckingEnabled); 

    } 
+0

是'ChartPanel'在內部框架,作爲討論[這裏](HTTP ://stackoverflow.com/questions/8199766/how-can-i-fix-this-code-so-i-can-add-this-jfreechart-to-a-panel/8199839#8199839)? – trashgod

+0

我對你寫的東西一無所知。你真的想實現什麼?您的意思是包含JFreeChart的面板的大小調整,或者您的意思是調整圖表的每個部分? –

+0

我的意思是在該圖表是在通過減小面板的尺寸的面板I假設圖表將太 –

回答

3

你不必擔心您的圖表大小,將您的面板佈局設置爲GridBagLayout,這應該有所幫助。

+0

什麼:(..... –

+0

剛編輯我的答案上使用的GridBagLayout而不是改變圖表的大小 – GETah

+0

是的,一切完美的感謝。希望我沒有打擾你太多:P。 –

1

你有你的加入面板chartPanelJFrame

如果沒有,試試這個:

JFrame jf = new JFrame("Chart"); 
jf.add(chartPanel); 
jf.pack(); 
jf.setSize(frame_width,frame_height); 
jf.setVisible(true); 

正如你可以從代碼中看到,您可以編輯其中chartPanel包含與jf.setSize(frame_width,frame_height);幀的大小。

你只需看看這些API:

JFrame的API:http://download.oracle.com/javase/6/docs/api/javax/swing/JFrame.html

的JPanel API:http://download.oracle.com/javase/6/docs/api/javax/swing/JPanel.html

+0

這依賴有一個默認的'BorderLayout'和CENTER'的'默認目的地'JFrame'。 – trashgod

+0

@trashgod顯然。如果OP想要一個具有指定佈局的JFrame,他可以使用Container並調用setLayout(),但他沒有要求。另外,如果他想設置JFrame的位置/目的地,他可以調用JFrame類的setBounds()方法。 :-) –

+0

事實上,來自OP的更多信息會提供更好的答案。我很好奇,作爲涉及'JInternalFrame'的[前一個]問題,這與你使用'JFrame'的例子類似。 – trashgod

相關問題