/** * Predisplay function * * @return void */ function prepare() { $values = $this->_values; $count = count($values); $max = max(max($values), 10); $min = min($values); $normalized = array(); for ($i = 0; $i < $count; $i++) { $normalized[$i] = $this->_height - $values[$i] / $max * $this->_height; } $div = $this->_width / ($count - 1); if ($this->getDotSize() > 0) { for ($i = 0; $i < $count; $i++) { $p = new GCircledPoint(); $p->setBackgroundColor($this->_background_r_color, $this->_background_g_color, $this->_background_b_color); $p->setCoordinates($i * $div, $normalized[$i]); $p->setColor($this->_r_color, $this->_g_color, $this->_b_color); $p->setSize($this->getDotSize()); $this->addElement($p); if ($this->_print) { $s = new GString("{$values[$i]}"); $s->setDistance(18); $s->setCoordinates($i * $div, $normalized[$i]); $this->addElement($s); } } } }
/** * Predisplay function * * @return void */ function prepare() { $s = new GSegment(); $s->setCoordinates(0, $this->_height, $this->_width, $this->_height); $s->setColor($this->_grid_r_color, $this->_grid_g_color, $this->_grid_b_color); $this->addElement($s); $s = new GSegment(); $s->setCoordinates(0, $this->_height / 2, $this->_width, $this->_height / 2); $s->setColor($this->_grid_r_color, $this->_grid_g_color, $this->_grid_b_color); $this->addElement($s); $s = new GSegment(); $s->setCoordinates(0, 0, $this->_width, 0); $s->setColor($this->_grid_r_color, $this->_grid_g_color, $this->_grid_b_color); $this->addElement($s); $count = count($this->_legend); $div = $this->_width / ($count - 1); for ($i = 0; $i < $count - 1; $i = $i + (int) ($count / 5)) { $s = new GSegment(); $s->setCoordinates($i * $div, 0, $i * $div, $this->_height); $s->setColor($this->_grid_r_color, $this->_grid_g_color, $this->_grid_b_color); $this->addElement($s); $str = new GString($this->_legend[$i]); $str->setCoordinates($i * $div, $this->_height); $str->setXDistance(10); $str->setYDistance(-5); $this->addElement($str); } $s = new GSegment(); $s->setCoordinates(($count - 1) * $div, 0, ($count - 1) * $div, $this->_height); $s->setColor($this->_grid_r_color, $this->_grid_g_color, $this->_grid_b_color); $this->addElement($s); $str = new GString($this->_legend[$count - 1]); $str->setCoordinates(($count - 1) * $div, $this->_height); $str->setXDistance(10); $str->setYDistance(-5); $this->addElement($str); $str = new GString("" . $this->_max_value); $str->setCoordinates(0, 0); $str->setDistance(15); $this->addElement($str); }
/** * Predisplay function * * @return void */ function prepare() { $values = $this->_values; $count = count($values); $max = max(max($values), 10); $min = min($values); $normalized = array(); for ($i = 0; $i < $count; $i++) { if ($max == 0) { $normalized[$i] = $this->_height; } else { $normalized[$i] = $this->_height - $values[$i] / $max * $this->_height; } } $div = $this->_width / ($count - 1); for ($i = 0; $i < $count - 1; $i++) { $s = new GSegment(); $s->setCoordinates($i * $div, $normalized[$i], ($i + 1) * $div, $normalized[$i + 1]); $s->setSize($this->getSize()); $s->setColor($this->_r_color, $this->_g_color, $this->_b_color); $this->addElement($s); if ($this->_show_background) { $values = array($i * $div, $this->_height, $i * $div, $normalized[$i], ($i + 1) * $div, $normalized[$i + 1], ($i + 1) * $div, $this->_height); $p = new GPolygon($values); $p->setColor($this->_background_r_color, $this->_background_g_color, $this->_background_b_color); $this->addElement($p); } if ($this->_show_values && $i % 3 == 0) { $str = new GString("" . $this->_values[$i]); $str->setCoordinates($i * $div, $normalized[$i], ($i + 1) * $div, $normalized[$i + 1]); $str->setDistance(18); $this->addElement($str); } } $str = new GString("" . $this->_values[$count - 1]); $str->setCoordinates(($count - 1) * $div, $normalized[$count - 1]); $str->setDistance(18); $this->addElement($str); }