当前位置: 首页>>代码示例>>PHP>>正文


PHP Graph::IsPositionInside方法代码示例

本文整理汇总了PHP中Graph::IsPositionInside方法的典型用法代码示例。如果您正苦于以下问题:PHP Graph::IsPositionInside方法的具体用法?PHP Graph::IsPositionInside怎么用?PHP Graph::IsPositionInside使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Graph的用法示例。


在下文中一共展示了Graph::IsPositionInside方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: DataLabelPosition

 /**
  * Overridden to prevent drawing on other bars
  */
 public function DataLabelPosition($dataset, $index, &$item, $x, $y, $w, $h, $label_w, $label_h)
 {
     if (!is_numeric($dataset)) {
         if ($dataset === 'totalpos') {
             if (isset($this->last_position_pos[$index])) {
                 list($lpos, $l_w) = $this->last_position_pos[$index];
                 list($hpos, $vpos) = Graph::TranslatePosition($lpos);
                 if ($hpos == 'or') {
                     return "middle outside right {$l_w} 0";
                 }
             }
             return 'outside right';
         }
         if ($dataset === 'totalneg') {
             if (isset($this->last_position_neg[$index])) {
                 list($lpos, $l_w) = $this->last_position_neg[$index];
                 list($hpos, $vpos) = Graph::TranslatePosition($lpos);
                 if ($hpos == 'ol') {
                     return "middle outside left -{$l_w} 0";
                 }
             }
             return 'outside left';
         }
     }
     if ($dataset === 'totalpos') {
         return 'outside right';
     }
     if ($dataset === 'totalneg') {
         return 'outside left';
     }
     $pos = parent::DataLabelPosition($dataset, $index, $item, $x, $y, $w, $h, $label_w, $label_h);
     if ($label_w > $w && Graph::IsPositionInside($pos)) {
         $pos = str_replace(array('outside left', 'outside right'), 'centre', $pos);
     }
     if ($item->value > 0) {
         $this->last_position_pos[$index] = array($pos, $label_w);
     } else {
         $this->last_position_neg[$index] = array($pos, $label_w);
     }
     return $pos;
 }
开发者ID:schnitzelx,项目名称:SchoolSurvey,代码行数:44,代码来源:SVGGraphHorizontalStackedBarGraph.php

示例2: DataLabelPosition

 /**
  * Overridden to prevent drawing on other bars
  */
 public function DataLabelPosition($dataset, $index, &$item, $x, $y, $w, $h, $label_w, $label_h)
 {
     if (!is_numeric($dataset)) {
         // doing this supports stacked grouped bar graph totals too
         list($d) = explode('-', $dataset);
         if ($d === 'totalpos') {
             if (isset($this->last_position_pos[$index])) {
                 list($lpos, $l_h) = $this->last_position_pos[$index];
                 list($hpos, $vpos) = Graph::TranslatePosition($lpos);
                 if ($vpos == 'ot') {
                     return "above 0 -{$l_h}";
                 }
             }
             return 'above';
         }
         if ($d === 'totalneg') {
             if (isset($this->last_position_neg[$index])) {
                 list($lpos, $l_h) = $this->last_position_neg[$index];
                 list($hpos, $vpos) = Graph::TranslatePosition($lpos);
                 if ($vpos == 'ob') {
                     return "below 0 {$l_h}";
                 }
             }
             return 'below';
         }
     }
     $pos = parent::DataLabelPosition($dataset, $index, $item, $x, $y, $w, $h, $label_w, $label_h);
     if ($label_h > $h && Graph::IsPositionInside($pos)) {
         $pos = str_replace(array('top', 'bottom', 'above', 'below'), 'middle', $pos);
     }
     if ($item->value > 0) {
         $this->last_position_pos[$index] = array($pos, $label_h);
     } else {
         $this->last_position_neg[$index] = array($pos, $label_h);
     }
     return $pos;
 }
开发者ID:battelle-dsi-capstone-2015,项目名称:corpus_topic_browser,代码行数:40,代码来源:SVGGraphStackedBarGraph.php

示例3: DataLabelPosition

 /**
  * Returns the position for a data label
  */
 public function DataLabelPosition($dataset, $index, &$item, $x, $y, $w, $h, $label_w, $label_h)
 {
     $pos = parent::DataLabelPosition($dataset, $index, $item, $x, $y, $w, $h, $label_w, $label_h);
     $bpos = $this->bar_label_position;
     if (!empty($bpos)) {
         $pos = $bpos;
     }
     if ($label_h > $h && Graph::IsPositionInside($pos)) {
         $pos = str_replace(array('top', 'middle', 'bottom'), 'outside top inside ', $pos);
     }
     // flip top/bottom for negative values
     if ($item->value < 0) {
         if (strpos($pos, 'top') !== FALSE) {
             $pos = str_replace('top', 'bottom', $pos);
         } elseif (strpos($pos, 'above') !== FALSE) {
             $pos = str_replace('above', 'below', $pos);
         } elseif (strpos($pos, 'below') !== FALSE) {
             $pos = str_replace('below', 'above', $pos);
         } elseif (strpos($pos, 'bottom') !== FALSE) {
             $pos = str_replace('bottom', 'top', $pos);
         }
     }
     return $pos;
 }
开发者ID:goat1000,项目名称:svggraph,代码行数:27,代码来源:SVGGraphBarGraph.php

示例4: DataLabelPosition

 /**
  * Returns the position for a data label
  */
 public function DataLabelPosition($dataset, $index, &$item, $x, $y, $w, $h, $label_w, $label_h)
 {
     $pos = parent::DataLabelPosition($dataset, $index, $item, $x, $y, $w, $h, $label_w, $label_h);
     $bpos = $this->bar_label_position;
     if (!empty($bpos)) {
         $pos = $bpos;
     }
     if ($label_w > $w && Graph::IsPositionInside($pos)) {
         $pos = str_replace(array('left', 'centre', 'right'), 'outside right inside', $pos);
     }
     // flip sides for negative values
     if ($item->value < 0) {
         if (strpos($pos, 'right') !== FALSE) {
             $pos = str_replace('right', 'left', $pos);
         } elseif (strpos($pos, 'left') !== FALSE) {
             $pos = str_replace('left', 'right', $pos);
         }
     }
     return $pos;
 }
开发者ID:goat1000,项目名称:svggraph,代码行数:23,代码来源:SVGGraphHorizontalBarGraph.php


注:本文中的Graph::IsPositionInside方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。