<html>
 
<head>
 
  <title>Simple Linear Regression</title>
 
</head>
 
<body bgcolor="white">
 
 
<center>
 
 
<?php
 
 
include "navbar.php";
 
 
if (!empty($x_values)) {
 
  $X    = explode(",", $x_values);
 
  $numX = count($X);
 
}  
 
 
if (!empty($y_values)) {
 
  $Y    = explode(",", $y_values);
 
  $numY = count($Y);
 
}  
 
 
// redisplay entry form if data not entered correctly
 
 
if ( (empty($title)) OR (empty($x_name)) OR (empty($x_values)) OR (empty($y_name)) OR (empty($conf_int)) OR (empty($y_values)) OR ($numX != $numY) ) {
 
    
 
  ?> 
 
 
  <h2>Simple Linear Regression</h2>
 
  
 
  
 
  <table border='0' cellspacing='5' cellpadding='0'>
 
    <form method='post' action='<?php echo $PHP_SELF ?>'>
 
    <tr>
 
        <td>
 
        1. Title of Study
 
        </td>
 
      </tr>
 
      <tr>
 
        <td>
 
          <input type='text' name='title' size='30' value='<?php echo $title ?>'>
 
        </td>
 
      </tr>
 
    <tr>
 
        <td>
 
        2. Enter X name
 
        </td>
 
      </tr>
 
      <tr>
 
        <td>
 
          <input type='text' name='x_name' size='30' value='<?php echo $x_name ?>'>
 
        </td>
 
      </tr>
 
    <tr>
 
        <td>
 
        3. Enter comma separated X values
 
        </td>
 
      </tr>
 
      <tr>
 
        <td>
 
          <textarea name='x_values' rows='3' cols='50'><?php echo $x_values ?></textarea>
 
        </td>
 
      </tr>
 
    <tr>
 
        <td>
 
        4. Enter Y name
 
        </td>
 
      </tr>
 
      <tr>
 
        <td>
 
          <input type='text' name='y_name' size='30' value='<?php echo $y_name ?>'>
 
        </td>
 
      </tr>
 
    <tr>
 
        <td>
 
        5. Enter comma separated Y values
 
        </td>
 
      </tr>
 
      <tr>
 
        <td>
 
          <textarea name='y_values' rows='3' cols='50'><?php echo $y_values ?></textarea>
 
        </td>
 
      </tr>
 
    <tr>
 
        <td>
 
        6. Confidence Interval
 
        </td>
 
      </tr>
 
      <tr>
 
        <td>
 
          <input type='text' name='conf_int' size='3' value='<?php echo $conf_int ?>'>%
 
        </td>
 
      </tr>
 
    <tr>
 
        <td align='center'>
 
          <input type='submit' value='Analyse Data'>
 
        </td>
 
    </tr>
 
    </form>
 
  </table>
 
 
  <?php
 
} else {
 
  
 
  include_once "slr/SimpleLinearRegressionHTML.php";    
 
                  
 
  $slr = new SimpleLinearRegressionHTML($X, $Y, $conf_int); 
 
  
 
  echo "<h2>$title</h2>";
 
  
 
  $slr->showTableSummary($x_name, $y_name);
 
  echo "<br><br>";
 
  
 
  $slr->showAnalysisOfVariance();  
 
  echo "<br><br>";
 
 
  $slr->showParameterEstimates($x_name, $y_name); 
 
  echo "<br>";
 
 
  $slr->showFormula($x_name, $y_name);
 
  echo "<br><br>";
 
 
  $slr->showRValues($x_name, $y_name);
 
  echo "<br>";
 
 
  include ("jpgraph/jpgraph.php");
 
  include ("jpgraph/jpgraph_scatter.php");
 
  include ("jpgraph/jpgraph_line.php");
 
  
 
  // The first graph to display is a scatter plus line plot  
 
  $graph = new Graph(300,200,'auto');
 
  $graph->SetScale("linlin");
 
  
 
  // Setup title  
 
  $graph->title->Set("$title");
 
  $graph->img->SetMargin(50,20,20,40);   
 
  $graph->xaxis->SetTitle("$x_name","center");
 
  $graph->yaxis->SetTitleMargin(30);     
 
  $graph->yaxis->title->Set("$y_name"); 
 
  
 
  $graph->title->SetFont(FF_FONT1,FS_BOLD);
 
  
 
  // make sure that the X-axis is always at the
 
  // bottom at the plot and not just at Y=0 which is
 
  // the default position  
 
  $graph->xaxis->SetPos('min');
 
  
 
  // Create the scatter plot with some nice colors
 
  $sp1 = new ScatterPlot($slr->Y, $slr->X);
 
  $sp1->mark->SetType(MARK_FILLEDCIRCLE);
 
  $sp1->mark->SetFillColor("red");
 
  $sp1->SetColor("blue");
 
  $sp1->SetWeight(3);
 
  $sp1->mark->SetWidth(4);
 
  
 
  // Create the regression line
 
  $lplot = new LinePlot($slr->PredictedY, $slr->X);
 
  $lplot->SetWeight(2);
 
  $lplot->SetColor('navy');
 
  
 
  // Add the pltos to the line
 
  $graph->Add($sp1);
 
  $graph->Add($lplot);
 
  
 
  // ... and stroke
 
  $graph_name = "temp/test.png";
 
  $graph->Stroke($graph_name);
 
  ?>
 
  <img src='<?php echo $graph_name ?>' vspace='15'>
 
  <br><br>  
 
  <?php 
 
  // Second graph displays residuals as function of predicted Y values
 
  $graph2 = new Graph(300,200,'auto');
 
  $graph2->SetScale("linlin");
 
  
 
  // Setup title  
 
  $graph2->title->Set("$title");
 
  $graph2->img->SetMargin(60,20,20,40); 
 
  $graph2->xaxis->SetTitle("Predicted Y","center");
 
  $graph2->yaxis->SetTitleMargin(40);   
 
  $graph2->yaxis->title->Set("Residual"); 
 
 
 
  $graph2->title->SetFont(FF_FONT1,FS_BOLD);  
 
  $graph2->xaxis->SetPos('min');
 
  
 
  $sp2 = new ScatterPlot($slr->Error, $slr->PredictedY);
 
  $sp2->mark->SetType(MARK_FILLEDCIRCLE);
 
  $sp2->mark->SetFillColor("red");
 
  $sp2->SetColor("blue");
 
  $sp2->SetWeight(3);
 
  $sp2->mark->SetWidth(4);
 
  
 
  $graph2->Add($sp2);
 
  
 
  $graph_name = "temp/test2.png";
 
  $graph2->Stroke($graph_name);
 
 
  ?>
 
  <img src='<?php echo $graph_name ?>' vspace='15'>  
 
  <form>
 
    <input type='Button' value='Back' onClick='history.go(-1)'>
 
  </form>
 
  <?php
 
}
 
?>
 
</center>
 
</body>
 
</html>
 
 |