title: Having trouble getting labels to appear next to pie chart legend in a Java Applet
body: <p>I'm fairly new to Java, and using NetBeans IDE 7.0.1.</p>
  
  <p>Problem:<br>
  I'm trying to finish up a Java applet I've been working on that requires a pie chart.  I've implemented the pie chart, but I've not been able to get the text labels to appear next to the data in the legend.  Does anyone have any pointers?</p>
  
  <pre><code>package piechartapplet;
  
  
  import javax.swing.*;
  import java.awt.*;
  
  
  public class PieChartApplet extends JApplet {
  
      int TotalPieChartSlices = 7;
      SliceValues[] pieSlice = new SliceValues[TotalPieChartSlices];
      private int pieChartValueY;
  
      public PieChartApplet() 
      {
  //Source for input statisctics:
  //Global Issues. (2012). World Military Spending. Retrieved from http://www.globalissues.org/article/75/world-military-spending             
  // Link:  http://www.globalissues.org/article/75/world-military-spending
  
      pieSlice[0] = new SliceValues(41.0, Color.RED,"United States");
      pieSlice[1] = new SliceValues(8.2, Color.CYAN,"China");
      pieSlice[2] = new SliceValues(4.1, Color.GREEN,"Russia");
      pieSlice[3] = new SliceValues(3.6, Color.BLUE,"UK");
      pieSlice[4] = new SliceValues(3.6, Color.PINK,"France");
      pieSlice[5] = new SliceValues(21.3, Color.ORANGE,"Next 10 Countries Combined");
      pieSlice[6] = new SliceValues(18.2, Color.LIGHT_GRAY,"Rest of the World");
  
  }
  
  // drawing the pir chart using the values in the array
      public int drawPieChartValues(Graphics2D graphics, Rectangle pieChartArea, SliceValues[] pieSlice)
      {
      // setting font size/style
          Font font = new Font("Arial", Font.BOLD, 24);
          graphics.setFont(font);
  // Title of Pie Chart
          graphics.drawString("World Military Spending (% by Country)", 20, 20);
          graphics.setFont(font);
  // establishing inital area positioning
          pieChartArea.x=10;
          pieChartArea.y = 30;
  // using the array values, rectangles, and color to draw the slices
          for(int i=0; i&lt;pieSlice.length;i++)
          {
              graphics. setColor(pieSlice[i].getSliceColor());
              graphics.fillRect(pieChartArea.x, pieChartArea.y, 15, 10);
              graphics.setColor(Color.BLACK);
              pieChartArea.y+=20;
              graphics.drawString(""+pieSlice[i].getSliceValue(), pieChartArea.x+25, pieChartArea.y-10);
          }
          return pieChartArea.y+=10;
      }
  
  //The code below was adapted from an example I found that enables me to pull from
  // the array and use the values as the slice sizes, putting them into a 360* pie
  // Walker, K. (2012). How to Draw a Pie Chart in Java. Retrieved from http://www.ehow.com/how_6647263_draw-pie-chart-java.html 
  
  
      public void drawPieChart(Graphics2D graphics, Rectangle pieChartArea, SliceValues[] pieSlice) {
  
  // pulling array data for the individual slices
          double total = 0.0;
          for (int i=0; i&lt;pieSlice.length; i++) 
          {
              total += pieSlice[i].getSliceValue(); //pulling value
          }
      // drawing the slice and positioning it accordingly
          double slice = 0.0D;
          int StartAngle = 0;
          pieChartArea.x = 20;
          for (int i=0; i&lt;pieSlice.length; i++) {
  
  // finding initial and final angels
              StartAngle = (int)(slice * 360 / total);
              int finalAngle = (int)(pieSlice[i].getSliceValue() * 360 / total);
  //loop for last slice
              if (i == pieSlice.length-1) 
                          {
                  finalAngle = 360 - StartAngle;
              }
  // Pulling color from array and setting accordingly
          graphics.setColor(pieSlice[i].getSliceColor()); //pulling color
          // drawing pie piece
                  graphics.fillArc(pieChartArea.x, pieChartValueY, pieChartArea.width/2, pieChartArea.height/2, StartAngle, finalAngle);
  
          slice += pieSlice[i].getSliceValue();
          }
      }
      public void paint(Graphics g) 
      {
          super.paint(g);
          pieChartValueY  = drawPieChartValues((Graphics2D)g, getBounds(), pieSlice);
          drawPieChart((Graphics2D)g, getBounds(), pieSlice);
      }   
  
      public void init() {        
  // Sizing my applet
          setSize(600,600);
  // adding applet to pane
          getContentPane().add(new PieChartApplet());
      }
  }
  </code></pre>
  
  <p><strong>Here is the 'values' code</strong></p>
  
  <pre><code>package piechartapplet;
  
  
  import javax.swing.*;
  import java.awt.*;
  
  public class SliceValues 
  {
  // Establishing values for the pir chart
  
      private double Slicevalue;
      private Color Slicecolor;
      private String Slicestring;
  
  // Construction begins...
      public SliceValues(double value, Color color, String string) {
          this.Slicevalue = value; //values from array
          this.Slicecolor = color; //color from array
          this.Slicestring = string; //string values
      }
  
  // calling slice values, colors, strings, and setting values, colors, strings for each slice
      public double getSliceValue() {
          return Slicevalue;
      }
  
      public void setSliceValue(double value) {
          this.Slicevalue = value;
      }
  
      public Color getSliceColor() {
          return Slicecolor;
      }
  
      public void setSliceColor(Color color) {
          this.Slicecolor = color;
      }
  
      public String getSliceString() {
          return Slicestring;
      }
  
      public void setSliceString(String string) {
          this.Slicestring = string;
      }    
  }
  </code></pre>