Pie Chart Applet (Version#1)




/*	Name: Deepak Kumar
	File: PieChart.java
	Purpose: Given the number of students in class that will major in
			 each discipline, depict the data as a pie chart.
			 
	Notes: Version 1
	
	The applet is a first Java program that performs some simple
	computations and also uses the paint method to display the data
	visually. 
	
	In this version, we're doing ALL the work in the pain method.
	In the next version(s) we will learn how to use methods to clean up
	the applet code.
*/

import java.awt.*;
import java.applet.Applet;

public class PieChart extends Applet {

	public void paint(Graphics g) {
		
		// variables to store the number of students in each discipline
		// and the total number of students
		int Sci, Soc, Hum, Total;
		
		// variables to store percentages should be float
		float PercSci, PercSoc, PercHum;
		
		// the coordinates and size of the pie is fixed below
		int x = 50, y = 50, w = 100, h = 100;
		
		// these quantities will need to be computed for each slice
		int startAngle = 0, degrees;
		
		// Set # of students in each discipline
		Sci = 5;
		Soc = 6;
		Hum = 7;
		
		// Computer percentages
		Total = Sci + Soc + Hum;
		
		PercSci = Sci * 100.0f / Total;
		PercSoc = Soc * 100.0f / Total;
		PercHum = Hum * 100.0f / Total;
	
		// Print out results for checking
		System.out.println("Total = " + Total);
		System.out.println("%Sci = " + PercSci);
		System.out.println("%Soc = " + PercSoc);
		System.out.println("%Hum = " + PercHum);
		
		// Display the Pie Chart
		// Display the Pie for Sciences
		degrees = (int) (PercSci*360/100);
		g.setColor(Color.red);
		g.fillArc(x, y, w, h, startAngle, degrees);
		
		// Pie for Soc
		startAngle = degrees;
		degrees = (int) (PercSoc*360/100);
		g.setColor(Color.yellow);
		g.fillArc(x, y, w, h, startAngle, degrees);
		
		// Pie for Hum
		startAngle = startAngle + degrees;
		degrees = (int) (PercHum*360/100);
		g.setColor(Color.green);
		g.fillArc(x, y, w, h, startAngle, degrees);
		
	} // end of paint
} // end of applet