2012-01-24 8 views
0

さて、私は困惑しています。誰もが、jPanelのペイントコンポーネントを使用してグラフ(好ましくは円グラフ)を描画するNetBeansを使用するJavaの簡単なメソッドについて知っていますか?GUIコンポーネント、グラフ、およびグラフ。

私はグーグルで研究しており、まっすぐな答えを見つけることができません。私はまだ学んでおり、これはこのクラスのための最後の要素です。誰かがこれを行う簡単な方法を知っていれば、私はこの方法が必要です。それは、グラフィックスが必要なだけであることを要件が示すように変更する必要はありません。プログラムロジックはtemp.textFieldから解析します。どんな助けや方向性も高く評価されています。

P.S.はい、私はJFreeChartsを試しました。

private void jPanel1ComponentShown(java.awt.event.ComponentEvent evt) { 

    // Bar graph component and logic. 

    BorderLayout panelMapLayout = new BorderLayout(); 

    jPanel1.setLayout(panelMapLayout); 
    jPanel1.add(Graph, BorderLayout.CENTER); 

    JFrame fr = new JFrame(); 
    final int width = 300; 
    final int height = 400; 
    fr.setSize(width, height); 
    fr.setTitle("Grade Bar Graph"); 
    fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    fr.setVisible(true); 
    String str = JOptionPane.showInputDialog("What is the String file name?"); 
    barGraphComponent component = new barGraphComponent(); 

    fr.setVisible(true); 


} 

上記は私のコードですが、これはうまくいくと思います。誰も私がそれにロジックを追加する方法を知っていますか?必要があれば、私は全体のコードをスローします。私はそれを変更する必要はありません、整数の最初のセットを表示します。それらの整数を私のグラフにどうやって入れるのですか?

+0

なぜはJFreeChartニーズに合わないのですか? – user949300

+0

通常の状況下では、おそらくそうです。しかし、私は方法を統合するのに苦労しています、そして、私は今、時事通りにいます。フルタイムの学生で、新しい言語を学び、週に50〜60時間働いて、家族を持つのは大変です。 。 。 –

+1

Java命名規則を学び、それらに固執してください – kleopatra

答えて

0

使用JCommon & JFreechart jars。
私はそれと一緒に行くことができる..!

import java.io.File; 
import java.io.IOException; 
import org.jfree.chart.ChartFactory; 
import org.jfree.chart.ChartUtilities; 
import org.jfree.chart.JFreeChart; 
import org.jfree.chart.plot.PlotOrientation; 
import org.jfree.data.category.DefaultCategoryDataset; 

    public class JavaApplication3 { 
     DefaultCategoryDataset categoryDataset; 
     private String YaxisXaxis = "Hospital mortality rate"; 
     private String Xaxis[] = {"2009APR-2010MAR", "2010APR-2011MAR", "2011APR-2011NOV"}; 
     double val[] = {1.7879989, 1.6252073, 1.5941324}; 
    JFreeChart chart ; 
     public void getinput() {    
     } 
     void setinp() { 
      categoryDataset = new DefaultCategoryDataset(); 
      for (int i = 0; i < val.length; i++) { 
       categoryDataset.setValue(val[i], YaxisXaxis, Xaxis[i]); 
      } 
     } 
     void drawcharts(){ 
      chart = ChartFactory.createBarChart3D("XYZ HOSPITALS", // Title 
          "Year",    // X-Axis label 
          "Number of Students",// Y-Axis label 
          categoryDataset,   // Dataset 
          PlotOrientation.VERTICAL, 
          true,      // Show legend 
          true, 
          false 
         ); 
     } 
     void savechart() 
     { 
        String fileName="d:/sp.jpg"; 
      try { 
       /** 
       * This utility saves the JFreeChart as a JPEG 
       * First Parameter: FileName 
       * Second Parameter: Chart To Save 
       * Third Parameter: Height Of Picture 
       * Fourth Parameter: Width Of Picture 
       */ 
      ChartUtilities.saveChartAsJPEG(new File(fileName), chart, 800, 600); 
     } catch (IOException e) { 
      System.err.println("Problem occurred creating chart."); 
     } 
     } 
     public static void main(String[] args) { 
      // TODO code application logic here 
      JavaApplication3 obj =new JavaApplication3(); 
      obj.setinp(); 
      obj.drawcharts(); 
      obj.savechart(); 

     } 
    } 

このサンプルをお試しください... Uは簡単に取得することができます...

関連する問題