home *** CD-ROM | disk | FTP | other *** search
/ Microsoft Programmer's Library 1.3 / Microsoft-Programers-Library-v1.3.iso / sampcode / qc / qc25 / pie.c < prev    next >
Encoding:
C/C++ Source or Header  |  1989-11-15  |  1.6 KB  |  70 lines

  1. /* PIE.C:  Create sample pie chart.  */
  2. #include <conio.h>
  3. #include <string.h>
  4. #include <graph.h>
  5. #include <pgchart.h>
  6.  
  7. #define MONTHS 12
  8.  
  9. typedef enum {FALSE, TRUE} boolean;
  10.  
  11. float far value[MONTHS] = 
  12. {
  13.    33.0, 27.0, 42.0, 64.0,106.0,157.0,
  14.   182.0,217.0,128.0, 62.0, 43.0, 36.0
  15. };
  16. char far *category[MONTHS] = 
  17. {
  18.   "Jan", "Feb", "Mar", "Apr",
  19.   "May", "Jun", "Jly", "Aug",
  20.   "Sep", "Oct", "Nov", "Dec"
  21. };
  22. short far explode[MONTHS] = {0};
  23.  
  24. main()
  25. {
  26.   chartenv env;
  27.   int mode = _VRES16COLOR;
  28.  
  29.   /* Set highest video mode available */
  30.   while(!_setvideomode( mode ))
  31.      mode--;
  32.   if(mode == _TEXTMONO)
  33.      return( 0 );
  34.  
  35.   /* Initialize chart library and a default pie chart */
  36.   _pg_initchart();
  37.   _pg_defaultchart( &env, _PG_PIECHART, _PG_PERCENT );
  38.  
  39.   /* Add titles and some chart options */
  40.   strcpy( env.maintitle.title, "Good Neighbor Grocery" );
  41.   env.maintitle.titlecolor = 6;
  42.   env.maintitle.justify = _PG_RIGHT;
  43.   strcpy( env.subtitle.title, "Orange Juice Sales" ); 
  44.   env.subtitle.titlecolor = 6;
  45.   env.subtitle.justify = _PG_RIGHT;
  46.   env.chartwindow.border = FALSE;
  47.  
  48.   /* Parameters for call to _pg_chartpie are:
  49.    *  
  50.    *    env        - Environment variable
  51.    *    category   - Category labels
  52.    *    value      - Data to chart
  53.    *    explode    - Separated pieces
  54.    *    MONTHS     - Number of data values
  55.    */
  56.  
  57.   if(_pg_chartpie( &env, category, value,
  58.                     explode, MONTHS ))
  59.   {
  60.      _setvideomode( _DEFAULTMODE );
  61.      _outtext( "Error:  can't draw chart" );
  62.   }
  63.   else
  64.   {
  65.      getch(); 
  66.      _setvideomode( _DEFAULTMODE );
  67.   }
  68.   return( 0 );
  69. }
  70.