當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Plot::getX方法代碼示例

本文整理匯總了PHP中Plot::getX方法的典型用法代碼示例。如果您正苦於以下問題:PHP Plot::getX方法的具體用法?PHP Plot::getX怎麽用?PHP Plot::getX使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Plot的用法示例。


在下文中一共展示了Plot::getX方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: plotSellmeier

 public static function plotSellmeier()
 {
     $plot = new Plot();
     $plot->title("N Vs. Wavelength");
     $plot->xlabel("Wavelength (micrometers)");
     $plot->ylabel("Index of Refraction");
     $sell = new Sellmeier();
     $sell->loadMaterialsData();
     // Make material selection if it exists
     if (isset($_GET['selection'])) {
         // Parse selection
         $selection = json_decode(urldecode($_GET['selection']));
         // print_r($selection);
         if (!$sell->selectMaterials($selection)) {
             $errors[] = new UserError("Materials do not exist", 1);
         }
         // Parse legend
         $legend = array();
         if (isset($_GET['legend']) && is_array($_GET['legend']) && count($_GET['legend']) == count($selection)) {
             $legend = $_GET['legend'];
         } else {
             foreach ($selection as $material => $array) {
                 foreach ($array as $key => $axis) {
                     $legend[] = $material . " (axis " . $axis . ")";
                 }
             }
         }
         $plot->legend($legend);
         // Parse title
         if (isset($_GET['title'])) {
             $title = $_GET['title'];
             $sell->title($title);
         }
         // Parse domain
         $xmin = 0.4;
         $xmax = 1;
         $step = 0.001;
         if (isset($_GET['xmin']) && isset($_GET['xmax']) && isset($_GET['step'])) {
             if (is_numeric($_GET['xmin']) && is_numeric($_GET['xmax']) && is_numeric($_GET['step'])) {
                 $xmin = $_GET['xmin'] + 0;
                 $xmax = $_GET['xmax'] + 0;
                 $step = $_GET['step'] + 0;
             } else {
                 $errors[] = new UserError("Wavelength range must be a number", 1);
             }
         }
         $plot->setX(range($xmin, $xmax, $step));
         $ydata = array();
         foreach ($sell->getSelection() as $name => $axis_array) {
             foreach ($axis_array as $axis => $coeffs) {
                 $legend = $name . '.' . $axis;
                 $ydata[$legend] = array();
                 foreach ($plot->getX() as $x) {
                     $ydata[$legend][] = $sell->calcSellmeier($x, $coeffs['a'], $coeffs['b'], $coeffs['c'], $coeffs['d'], $coeffs['e']);
                 }
             }
         }
         $plot->setY($ydata);
         // Output plot data
         echo $plot->getJson();
     } else {
         // Output materials list
         echo $sell->getMaterialsJson();
     }
 }
開發者ID:hbrew,項目名稱:lasersdb,代碼行數:65,代碼來源:data.php


注:本文中的Plot::getX方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。