Location: PHPKode > scripts > SimpleLinearRegression > simplelinearregression/explore.php
<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>
Return current item: SimpleLinearRegression