本文整理汇总了PHP中pImage::getLegendSize方法的典型用法代码示例。如果您正苦于以下问题:PHP pImage::getLegendSize方法的具体用法?PHP pImage::getLegendSize怎么用?PHP pImage::getLegendSize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pImage
的用法示例。
在下文中一共展示了pImage::getLegendSize方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: pch_vertical_graph
function pch_vertical_graph($graph_type, $index, $data, $width, $height, $rgb_color = false, $xaxisname = "", $yaxisname = "", $show_values = false, $legend = array(), $font, $antialiasing, $water_mark = '', $font_size)
{
/* CAT:Vertical Charts */
if (!is_array($legend) || empty($legend)) {
unset($legend);
}
/*$legend=array('pep1' => 'pep1','pep2' => 'pep2','pep3' => 'pep3','pep4' => 'pep4');
$data=array(array('pep1' => 1, 'pep2' => 1, 'pep3' => 3, 'pep4' => 3), array('pep1' => 1, 'pep2' => 3, 'pep3' => 1,'pep4' => 4), array('pep1' => 3, 'pep2' => 1, 'pep3' => 1,'pep4' =>1), array('pep1' => 1, 'pep2' =>1, 'pep3' =>1,'pep4' =>0));
$index=array(1,2,3,4);
*/
if (is_array(reset($data))) {
$data2 = array();
foreach ($data as $i => $values) {
$c = 0;
foreach ($values as $i2 => $value) {
$data2[$i2][$i] = $value;
$c++;
}
}
$data = $data2;
} else {
$data = array($data);
}
/* Create and populate the pData object */
$MyData = new pData();
foreach ($data as $i => $values) {
if (isset($legend)) {
$point_id = $legend[$i];
} else {
$point_id = $i;
}
$MyData->addPoints($values, $point_id);
if (!empty($rgb_color)) {
$MyData->setPalette($point_id, array("R" => $rgb_color[$i]['color']["R"], "G" => $rgb_color[$i]['color']["G"], "B" => $rgb_color[$i]['color']["B"], "BorderR" => $rgb_color[$i]['border']["R"], "BorderG" => $rgb_color[$i]['border']["G"], "BorderB" => $rgb_color[$i]['border']["B"], "Alpha" => $rgb_color[$i]['alpha']));
/*$palette_color = array();
if (isset($rgb_color[$i]['color'])) {
$palette_color["R"] = $rgb_color[$i]['color']["R"];
$palette_color["G"] = $rgb_color[$i]['color']["G"];
$palette_color["B"] = $rgb_color[$i]['color']["B"];
}
if (isset($rgb_color[$i]['color'])) {
$palette_color["BorderR"] = $rgb_color[$i]['border']["R"];
$palette_color["BorderG"] = $rgb_color[$i]['border']["G"];
$palette_color["BorderB"] = $rgb_color[$i]['border']["B"];
}
if (isset($rgb_color[$i]['color'])) {
$palette_color["Alpha"] = $rgb_color[$i]['Alpha'];
}
$MyData->setPalette($point_id, $palette_color);*/
}
$MyData->setSerieWeight($point_id, 1);
}
//$MyData->addPoints($data,"Yaxis");
$MyData->setAxisName(0, $yaxisname);
$MyData->addPoints($index, "Xaxis");
$MyData->setSerieDescription("Xaxis", $xaxisname);
$MyData->setAbscissa("Xaxis");
/* Create the pChart object */
$myPicture = new pImage($width, $height, $MyData);
/* Turn of Antialiasing */
$myPicture->Antialias = $antialiasing;
/* Add a border to the picture */
//$myPicture->drawRectangle(0,0,$width,$height,array("R"=>0,"G"=>0,"B"=>0));
/* Set the default font */
$myPicture->setFontProperties(array("FontName" => $font, "FontSize" => $font_size));
if (isset($legend)) {
/* Set horizontal legend if is posible */
$legend_mode = LEGEND_HORIZONTAL;
$size = $myPicture->getLegendSize(array("Style" => LEGEND_NOBORDER, "Mode" => $legend_mode));
if ($size['Width'] > $width - 5) {
$legend_mode = LEGEND_VERTICAL;
$size = $myPicture->getLegendSize(array("Style" => LEGEND_NOBORDER, "Mode" => $legend_mode));
}
/* Write the chart legend */
$myPicture->drawLegend($width - $size['Width'], 8, array("Style" => LEGEND_NOBORDER, "Mode" => $legend_mode));
}
//Calculate the bottom margin from the size of string in each index
$max_chars = 0;
foreach ($index as $string_index) {
if (empty($string_index)) {
continue;
}
$len = strlen($string_index);
if ($len > $max_chars) {
$max_chars = $len;
}
}
$margin_bottom = 10 * $max_chars;
$water_mark_height = 0;
$water_mark_width = 0;
if (!empty($water_mark)) {
$size_water_mark = getimagesize($water_mark);
$water_mark_height = $size_water_mark[1];
$water_mark_width = $size_water_mark[0];
$myPicture->drawFromPNG($width - $water_mark_width, $height - $water_mark_height - $margin_bottom, $water_mark);
}
if (isset($size['Height'])) {
/* Define the chart area */
$myPicture->setGraphArea(40, $size['Height'], $width - $water_mark_width, $height - $margin_bottom);
//.........这里部分代码省略.........
示例2: min
} else {
if (isset($chart_cols2) and in_array($idx, $chart_cols2)) {
$arrSeriesY2[] = $field;
$myData->setSerieOnAxis($field, 1);
$myData->setSerieDescription($field, "右){$field}");
}
}
$nSerie += 1;
}
}
if (isset($arrSeriesY2)) {
$myData->setAxisPosition(1, AXIS_POSITION_RIGHT);
}
$myData->setAxisUnit(0, $unitY);
/* Write the chart legend */
$sizeLegend = $myPicture->getLegendSize(array("Mode" => LEGEND_VERTICAL));
$widthLegend = min($sizeLegend['Width'], max(120, $width * 0.25));
if ($legend > 0) {
$myPicture->setFontProperties(array("FontName" => "./fonts/simsun.ttc", "FontSize" => $font, "R" => 0, "G" => 0, "B" => 0));
$myPicture->drawLegend($width - 5 - $widthLegend, 5 + $font_t * 3, array("Style" => LEGEND_BOX, "Mode" => LEGEND_VERTICAL, "Alpha" => 10, "Margin" => 4, "R" => 255, "G" => 255, "B" => 255));
}
$myPicture->setFontProperties(array("FontName" => "./fonts/simhei.ttf", "FontSize" => $font, "R" => 0, "G" => 0, "B" => 0));
/* Define the chart area */
$width_offset = 0;
if ($legend > 0) {
$width_offset += max($widthLegend, 50);
}
if (isset($arrSeriesY2)) {
$width_offset += 15 + $font * 3;
}
$myPicture->setGraphArea(28 + $font * 3, 11 + $font_t * 3, $width - 15 - $width_offset, $height - 23 - $font * 3);
示例3: chr
if ($l_format == "LEGEND_ROUND") {
$Config["Style"] = 690802;
}
if ($l_orientation == "LEGEND_VERTICAL") {
$Config["Mode"] = 690901;
}
if ($l_orientation == "LEGEND_HORIZONTAL") {
$Config["Mode"] = 690902;
}
if ($l_family == "LEGEND_FAMILY_CIRCLE") {
$Config["Family"] = 691052;
}
if ($l_family == "LEGEND_FAMILY_LINE") {
$Config["Family"] = 691053;
}
$Size = $myPicture->getLegendSize($Config);
if ($l_position == "CORNER_TOP_RIGHT") {
$l_y = $l_margin + 10;
$l_x = $g_width - $Size["Width"] - 10 + $l_margin;
}
if ($l_position == "CORNER_BOTTOM_RIGHT") {
$l_y = $g_height - $Size["Height"] - 10 + $l_margin;
$l_x = $g_width - $Size["Width"] - 10 + $l_margin;
}
if ($Mode == "Render") {
$myPicture->drawLegend($l_x, $l_y, $Config);
} else {
$Config["FontName"] = chr(34) . "fonts/" . $l_font . chr(34);
echo "\r\n";
echo dumpArray("Config", $Config);
echo '$myPicture->drawLegend(' . $l_x . ',' . $l_y . ',$Config);' . "\r\n";