home *** CD-ROM | disk | FTP | other *** search
/ The Pier Shareware 6 / The_Pier_Shareware_Number_6_(The_Pier_Exchange)_(1995).iso / 035 / splot122.zip / DEMO / MULTPLOT.SPT < prev    next >
Text File  |  1994-06-20  |  4KB  |  169 lines

  1.  
  2. #include <splot.h>
  3.  
  4. int i,j;
  5. int firsttime = TRUE;
  6. double calc[11][4];
  7. double *data;
  8.  
  9. double calc2[11][4];
  10. double *data2;
  11.  
  12. double calc3[11][4];
  13. double *data3;
  14.  
  15. main() 
  16.    {   
  17.    /* read in data files */
  18.    readdata("demo\mult1.dat",data);
  19.    readdata("demo\mult2.dat",data2);
  20.    readdata("demo\mult3.dat",data3);
  21.        
  22.    /* average batch values but only do it the first time through */
  23.    if (firsttime)
  24.       {
  25.       for (i = 0; i < 11;i++)
  26.      {
  27.      for (j = 0;j < 10;j++)
  28.         {
  29.         calc[i][0] += data[i * 10 + j][0];
  30.         calc[i][1] += data[i * 10 + j][1];
  31.         calc[i][2] += data[i * 10 + j][2];
  32.         calc[i][3] += data[i * 10 + j][3];
  33.         calc2[i][0] += data2[i * 10 + j][0];
  34.         calc2[i][1] += data2[i * 10 + j][1];
  35.         calc2[i][2] += data2[i * 10 + j][2];
  36.         calc2[i][3] += data2[i * 10 + j][3];
  37.         calc3[i][0] += data3[i * 10 + j][0];
  38.         calc3[i][1] += data3[i * 10 + j][1];
  39.         calc3[i][2] += data3[i * 10 + j][2];
  40.         calc3[i][3] += data3[i * 10 + j][3];
  41.         }
  42.      calc[i][0] /= 10;
  43.      calc[i][1] /= 10;
  44.      calc[i][2] /= 10;
  45.      calc[i][3] /= 10;
  46.      calc2[i][0] /= 10;
  47.      calc2[i][1] /= 10;
  48.      calc2[i][2] /= 10;
  49.      calc2[i][3] /= 10;
  50.      calc3[i][0] /= 10;
  51.      calc3[i][1] /= 10;
  52.      calc3[i][2] /= 10;
  53.      calc3[i][3] /= 10;
  54.      }
  55.       firsttime = FALSE;
  56.       }
  57.  
  58.    abox(8,6,5,19.25);
  59.    ascale(YAXES,0,100);
  60.    ascale(XAXES,calc,0);
  61.  
  62.    /* set(YMULT,10);*/
  63.    set(FONTMULT,0.7);
  64.    set(TICKLENGTH,-0.2);
  65.        
  66.    tickmarks();
  67.    ticklabel();
  68.  
  69.    text(14.03,22.25,"1024 Data Items");
  70.  
  71.    set(PLOTTYPE,SYM_LINES);
  72.    set(AXESCLIP,ON);
  73.    set(CURSYMBOL,OSQUARE);
  74.  
  75.    set(LINECOLOUR,RED);
  76.    set(LINESTYLE,SOLID);
  77.    drawdata(calc,0,1);
  78.  
  79.    set(CURSYMBOL,CROSS);
  80.    set(LINECOLOUR,BLACK);
  81.    set(LINESTYLE,DASHED);
  82.    drawdata(calc,0,2);
  83.  
  84.    set(CURSYMBOL,OCIRCLE);
  85.    set(LINECOLOUR,GREEN);
  86.    set(LINESTYLE,DOTTED);
  87.    drawdata(calc,0,3);
  88.  
  89.    /* the second data set */
  90.    set(LINECOLOUR,BLACK);
  91.    set(LINESTYLE,SOLID);
  92.  
  93.    abox(8,6,5,11);
  94.    ascale(YAXES,calc2,1);
  95.    ascale(XAXES,calc2,0);
  96.  
  97.    tickmarks();
  98.    ticklabel();
  99.  
  100.    label(LEFT,"Throughput (TPS)");
  101.    text(14.03,14,"128 Data Items");
  102.  
  103.    set(CURSYMBOL,OSQUARE);
  104.  
  105.    set(LINECOLOUR,RED);
  106.    set(LINESTYLE,SOLID);
  107.    drawdata(calc2,0,1);
  108.  
  109.    set(CURSYMBOL,CROSS);
  110.    set(LINECOLOUR,BLACK);
  111.    set(LINESTYLE,DASHED);
  112.    drawdata(calc2,0,2);
  113.  
  114.    set(CURSYMBOL,OCIRCLE);
  115.    set(LINECOLOUR,GREEN);
  116.    set(LINESTYLE,DOTTED);
  117.    drawdata(calc2,0,3);
  118.  
  119.    /* the third data set */
  120.    set(LINECOLOUR,BLACK);
  121.    set(LINESTYLE,SOLID);
  122.  
  123.    abox(8,6,5,2.75);
  124.    ascale(YAXES,0,10);
  125.    ascale(XAXES,calc3,0);
  126.  
  127.    tickmarks();
  128.    ticklabel();
  129.  
  130.    text(14.03,5.75,"16 Data Items");
  131.  
  132.    set(CURSYMBOL,OSQUARE);
  133.  
  134.    set(LINECOLOUR,RED);
  135.    set(LINESTYLE,SOLID);
  136.    moveto(5.76,24.5);
  137.    symbol(OSQUARE);
  138.    rlineto(1.5,0);
  139.    symbol(OSQUARE);
  140.    drawdata(calc3,0,1);
  141.  
  142.    set(CURSYMBOL,CROSS);
  143.    set(LINECOLOUR,BLACK);
  144.    set(LINESTYLE,DASHED);
  145.    set(PATTOFF,0.5);
  146.    moveto(5.76,23.6);
  147.    symbol(CROSS);
  148.    rlineto(1.5,0);
  149.    symbol(CROSS);
  150.    drawdata(calc3,0,2);
  151.  
  152.    set(CURSYMBOL,OCIRCLE);
  153.    set(LINECOLOUR,GREEN);
  154.    set(LINESTYLE,DOTTED);
  155.    moveto(5.76,22.7);
  156.    symbol(OCIRCLE);
  157.    rlineto(1.5,0);
  158.    symbol(OCIRCLE);
  159.    drawdata(calc3,0,3);
  160.  
  161.    set(LINECOLOUR,BLACK);
  162.    set(LINESTYLE,SOLID);
  163.  
  164.    label(BOTTOM,"Multi Programming Level");
  165.    text(7.53,24.5,"MTL");
  166.    text(7.53,23.6,"TPL");
  167.    text(7.53,22.7,"TSO");
  168.    }
  169.