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


PHP Data::getPalette方法代码示例

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


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

示例1: drawPolar

 /**
  * Draw a radar chart
  * @param Image $Object
  * @param Data $Values
  * @param array $Format
  */
 public function drawPolar(Image $Object, Data $Values, array $Format = array())
 {
     $this->pChartObject = $Object;
     $FixedMax = isset($Format["FixedMax"]) ? $Format["FixedMax"] : VOID;
     $AxisR = isset($Format["AxisR"]) ? $Format["AxisR"] : 60;
     $AxisG = isset($Format["AxisG"]) ? $Format["AxisG"] : 60;
     $AxisB = isset($Format["AxisB"]) ? $Format["AxisB"] : 60;
     $AxisAlpha = isset($Format["AxisAlpha"]) ? $Format["AxisAlpha"] : 50;
     $AxisRotation = isset($Format["AxisRotation"]) ? $Format["AxisRotation"] : -90;
     $DrawTicks = isset($Format["DrawTicks"]) ? $Format["DrawTicks"] : true;
     $TicksLength = isset($Format["TicksLength"]) ? $Format["TicksLength"] : 2;
     $DrawAxisValues = isset($Format["DrawAxisValues"]) ? $Format["DrawAxisValues"] : true;
     $AxisBoxRounded = isset($Format["AxisBoxRounded"]) ? $Format["AxisBoxRounded"] : true;
     $AxisFontName = isset($Format["FontName"]) ? $Format["FontName"] : $this->pChartObject->FontName;
     $AxisFontSize = isset($Format["FontSize"]) ? $Format["FontSize"] : $this->pChartObject->FontSize;
     $WriteValues = isset($Format["WriteValues"]) ? $Format["WriteValues"] : false;
     $WriteValuesInBubble = isset($Format["WriteValuesInBubble"]) ? $Format["WriteValuesInBubble"] : true;
     $ValueFontName = isset($Format["ValueFontName"]) ? $Format["ValueFontName"] : $this->pChartObject->FontName;
     $ValueFontSize = isset($Format["ValueFontSize"]) ? $Format["ValueFontSize"] : $this->pChartObject->FontSize;
     $ValuePadding = isset($Format["ValuePadding"]) ? $Format["ValuePadding"] : 4;
     $OuterBubbleRadius = isset($Format["OuterBubbleRadius"]) ? $Format["OuterBubbleRadius"] : 2;
     $OuterBubbleR = isset($Format["OuterBubbleR"]) ? $Format["OuterBubbleR"] : VOID;
     $OuterBubbleG = isset($Format["OuterBubbleG"]) ? $Format["OuterBubbleG"] : VOID;
     $OuterBubbleB = isset($Format["OuterBubbleB"]) ? $Format["OuterBubbleB"] : VOID;
     $OuterBubbleAlpha = isset($Format["OuterBubbleAlpha"]) ? $Format["OuterBubbleAlpha"] : 100;
     $InnerBubbleR = isset($Format["InnerBubbleR"]) ? $Format["InnerBubbleR"] : 255;
     $InnerBubbleG = isset($Format["InnerBubbleG"]) ? $Format["InnerBubbleG"] : 255;
     $InnerBubbleB = isset($Format["InnerBubbleB"]) ? $Format["InnerBubbleB"] : 255;
     $InnerBubbleAlpha = isset($Format["InnerBubbleAlpha"]) ? $Format["InnerBubbleAlpha"] : 100;
     $DrawBackground = isset($Format["DrawBackground"]) ? $Format["DrawBackground"] : true;
     $BackgroundR = isset($Format["BackgroundR"]) ? $Format["BackgroundR"] : 255;
     $BackgroundG = isset($Format["BackgroundG"]) ? $Format["BackgroundG"] : 255;
     $BackgroundB = isset($Format["BackgroundB"]) ? $Format["BackgroundB"] : 255;
     $BackgroundAlpha = isset($Format["BackgroundAlpha"]) ? $Format["BackgroundAlpha"] : 50;
     $BackgroundGradient = isset($Format["BackgroundGradient"]) ? $Format["BackgroundGradient"] : null;
     $AxisSteps = isset($Format["AxisSteps"]) ? $Format["AxisSteps"] : 20;
     $SegmentHeight = isset($Format["SegmentHeight"]) ? $Format["SegmentHeight"] : SEGMENT_HEIGHT_AUTO;
     $Segments = isset($Format["Segments"]) ? $Format["Segments"] : 4;
     $WriteLabels = isset($Format["WriteLabels"]) ? $Format["WriteLabels"] : true;
     $LabelsBackground = isset($Format["LabelsBackground"]) ? $Format["LabelsBackground"] : true;
     $LabelsBGR = isset($Format["LabelsBGR"]) ? $Format["LabelsBGR"] : 255;
     $LabelsBGG = isset($Format["LabelsBGR"]) ? $Format["LabelsBGG"] : 255;
     $LabelsBGB = isset($Format["LabelsBGR"]) ? $Format["LabelsBGB"] : 255;
     $LabelsBGAlpha = isset($Format["LabelsBGAlpha"]) ? $Format["LabelsBGAlpha"] : 50;
     $LabelPos = isset($Format["LabelPos"]) ? $Format["LabelPos"] : RADAR_LABELS_ROTATED;
     $LabelPadding = isset($Format["LabelPadding"]) ? $Format["LabelPadding"] : 4;
     $DrawPoints = isset($Format["DrawPoints"]) ? $Format["DrawPoints"] : true;
     $PointRadius = isset($Format["PointRadius"]) ? $Format["PointRadius"] : 4;
     $PointSurrounding = isset($Format["PointRadius"]) ? $Format["PointRadius"] : -30;
     $DrawLines = isset($Format["DrawLines"]) ? $Format["DrawLines"] : true;
     $LineLoopStart = isset($Format["LineLoopStart"]) ? $Format["LineLoopStart"] : false;
     $DrawPoly = isset($Format["DrawPoly"]) ? $Format["DrawPoly"] : false;
     $PolyAlpha = isset($Format["PolyAlpha"]) ? $Format["PolyAlpha"] : null;
     $FontSize = $Object->FontSize;
     $X1 = $Object->GraphAreaX1;
     $Y1 = $Object->GraphAreaY1;
     $X2 = $Object->GraphAreaX2;
     $Y2 = $Object->GraphAreaY2;
     $RecordImageMap = isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : false;
     if ($AxisBoxRounded) {
         $DrawAxisValues = true;
     }
     /* Cancel default tick length if ticks not enabled */
     if ($DrawTicks == false) {
         $TicksLength = 0;
     }
     /* Data Processing */
     $Data = $Values->getData();
     $Palette = $Values->getPalette();
     /* Catch the number of required axis */
     $LabelSerie = $Data["Abscissa"];
     if ($LabelSerie) {
         $Points = count($Data["Series"][$LabelSerie]["Data"]);
     } else {
         $Points = 0;
         foreach ($Data["Series"] as $SerieName => $DataArray) {
             if (count($DataArray["Data"]) > $Points) {
                 $Points = count($DataArray["Data"]);
             }
         }
     }
     /* Draw the axis */
     $CenterX = ($X2 - $X1) / 2 + $X1;
     $CenterY = ($Y2 - $Y1) / 2 + $Y1;
     $EdgeHeight = min(($X2 - $X1) / 2, ($Y2 - $Y1) / 2);
     if ($WriteLabels) {
         $EdgeHeight = $EdgeHeight - $FontSize - $LabelPadding - $TicksLength;
     }
     /* Determine the scale if set to automatic */
     if ($SegmentHeight == SEGMENT_HEIGHT_AUTO) {
         if ($FixedMax != VOID) {
             $Max = $FixedMax;
         } else {
             $Max = 0;
//.........这里部分代码省略.........
开发者ID:iansltx,项目名称:c-pchart,代码行数:101,代码来源:Radar.php

示例2: drawSplitPath

 /**
  * Create the encoded string
  * @param Image $Object
  * @param Data $Values
  * @param array $Format
  */
 public function drawSplitPath(Image $Object, Data $Values, array $Format = array())
 {
     $this->pChartObject = $Object;
     $Spacing = isset($Format["Spacing"]) ? $Format["Spacing"] : 20;
     $TextPadding = isset($Format["TextPadding"]) ? $Format["TextPadding"] : 2;
     $TextPos = isset($Format["TextPos"]) ? $Format["TextPos"] : TEXT_POS_TOP;
     $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : null;
     $Force = isset($Format["Force"]) ? $Format["Force"] : 70;
     $Segments = isset($Format["Segments"]) ? $Format["Segments"] : 15;
     $X1 = $Object->GraphAreaX1;
     $Y1 = $Object->GraphAreaY1;
     $X2 = $Object->GraphAreaX2;
     $Y2 = $Object->GraphAreaY2;
     /* Data Processing */
     $Data = $Values->getData();
     $Palette = $Values->getPalette();
     $LabelSerie = $Data["Abscissa"];
     $DataSerie = array();
     foreach ($Data["Series"] as $SerieName => $Value) {
         if ($SerieName != $LabelSerie && $DataSerie == "") {
             $DataSerie = $SerieName;
         }
     }
     $DataSerieSum = array_sum($Data["Series"][$DataSerie]["Data"]);
     $DataSerieCount = count($Data["Series"][$DataSerie]["Data"]);
     /* Scale Processing */
     if ($TextPos == TEXT_POS_RIGHT) {
         $YScale = ($Y2 - $Y1 - ($DataSerieCount + 1) * $Spacing) / $DataSerieSum;
     } else {
         $YScale = ($Y2 - $Y1 - $DataSerieCount * $Spacing) / $DataSerieSum;
     }
     $LeftHeight = $DataSerieSum * $YScale;
     /* Re-compute graph width depending of the text mode choosen */
     if ($TextPos == TEXT_POS_RIGHT) {
         $MaxWidth = 0;
         foreach ($Data["Series"][$LabelSerie]["Data"] as $Key => $Label) {
             $Boundardies = $Object->getTextBox(0, 0, $Object->FontName, $Object->FontSize, 0, $Label);
             if ($Boundardies[1]["X"] > $MaxWidth) {
                 $MaxWidth = $Boundardies[1]["X"] + $TextPadding * 2;
             }
         }
         $X2 = $X2 - $MaxWidth;
     }
     /* Drawing */
     $LeftY = ($Y2 - $Y1) / 2 + $Y1 - $LeftHeight / 2;
     $RightY = $Y1;
     foreach ($Data["Series"][$DataSerie]["Data"] as $Key => $Value) {
         if (isset($Data["Series"][$LabelSerie]["Data"][$Key])) {
             $Label = $Data["Series"][$LabelSerie]["Data"][$Key];
         } else {
             $Label = "-";
         }
         $LeftY1 = $LeftY;
         $LeftY2 = $LeftY + $Value * $YScale;
         $RightY1 = $RightY + $Spacing;
         $RightY2 = $RightY + $Spacing + $Value * $YScale;
         $Settings = array("R" => $Palette[$Key]["R"], "G" => $Palette[$Key]["G"], "B" => $Palette[$Key]["B"], "Alpha" => $Palette[$Key]["Alpha"], "NoDraw" => true, "Segments" => $Segments, "Surrounding" => $Surrounding);
         $PolyGon = "";
         $Angle = $Object->getAngle($X2, $RightY1, $X1, $LeftY1);
         $VectorX1 = cos(deg2rad($Angle + 90)) * $Force + ($X2 - $X1) / 2 + $X1;
         $VectorY1 = sin(deg2rad($Angle + 90)) * $Force + ($RightY1 - $LeftY1) / 2 + $LeftY1;
         $VectorX2 = cos(deg2rad($Angle - 90)) * $Force + ($X2 - $X1) / 2 + $X1;
         $VectorY2 = sin(deg2rad($Angle - 90)) * $Force + ($RightY1 - $LeftY1) / 2 + $LeftY1;
         $Points = $Object->drawBezier($X1, $LeftY1, $X2, $RightY1, $VectorX1, $VectorY1, $VectorX2, $VectorY2, $Settings);
         foreach ($Points as $Key => $Pos) {
             $PolyGon[] = $Pos["X"];
             $PolyGon[] = $Pos["Y"];
         }
         $Angle = $Object->getAngle($X2, $RightY2, $X1, $LeftY2);
         $VectorX1 = cos(deg2rad($Angle + 90)) * $Force + ($X2 - $X1) / 2 + $X1;
         $VectorY1 = sin(deg2rad($Angle + 90)) * $Force + ($RightY2 - $LeftY2) / 2 + $LeftY2;
         $VectorX2 = cos(deg2rad($Angle - 90)) * $Force + ($X2 - $X1) / 2 + $X1;
         $VectorY2 = sin(deg2rad($Angle - 90)) * $Force + ($RightY2 - $LeftY2) / 2 + $LeftY2;
         $Points = $Object->drawBezier($X1, $LeftY2, $X2, $RightY2, $VectorX1, $VectorY1, $VectorX2, $VectorY2, $Settings);
         $Points = array_reverse($Points);
         foreach ($Points as $Key => $Pos) {
             $PolyGon[] = $Pos["X"];
             $PolyGon[] = $Pos["Y"];
         }
         $Object->drawPolygon($PolyGon, $Settings);
         if ($TextPos == TEXT_POS_RIGHT) {
             $Object->drawText($X2 + $TextPadding, ($RightY2 - $RightY1) / 2 + $RightY1, $Label, array("Align" => TEXT_ALIGN_MIDDLELEFT));
         } else {
             $Object->drawText($X2, $RightY1 - $TextPadding, $Label, array("Align" => TEXT_ALIGN_BOTTOMRIGHT));
         }
         $LeftY = $LeftY2;
         $RightY = $RightY2;
     }
 }
开发者ID:iansltx,项目名称:c-pchart,代码行数:95,代码来源:Split.php

示例3: draw3DRing

 /**
  * Draw a 3D ring chart
  * @param int $X
  * @param int $Y
  * @param array $Format
  * @return int
  */
 public function draw3DRing($X, $Y, array $Format = array())
 {
     $OuterRadius = isset($Format["OuterRadius"]) ? $Format["OuterRadius"] : 100;
     $Precision = isset($Format["Precision"]) ? $Format["Precision"] : 0;
     $InnerRadius = isset($Format["InnerRadius"]) ? $Format["InnerRadius"] : 30;
     $SkewFactor = isset($Format["SkewFactor"]) ? $Format["SkewFactor"] : 0.6;
     $SliceHeight = isset($Format["SliceHeight"]) ? $Format["SliceHeight"] : 10;
     $DataGapAngle = isset($Format["DataGapAngle"]) ? $Format["DataGapAngle"] : 10;
     $DataGapRadius = isset($Format["DataGapRadius"]) ? $Format["DataGapRadius"] : 10;
     $Border = isset($Format["Border"]) ? $Format["Border"] : false;
     $Shadow = isset($Format["Shadow"]) ? $Format["Shadow"] : false;
     $DrawLabels = isset($Format["DrawLabels"]) ? $Format["DrawLabels"] : false;
     $LabelStacked = isset($Format["LabelStacked"]) ? $Format["LabelStacked"] : false;
     $LabelColor = isset($Format["LabelColor"]) ? $Format["LabelColor"] : PIE_LABEL_COLOR_MANUAL;
     $LabelR = isset($Format["LabelR"]) ? $Format["LabelR"] : 0;
     $LabelG = isset($Format["LabelG"]) ? $Format["LabelG"] : 0;
     $LabelB = isset($Format["LabelB"]) ? $Format["LabelB"] : 0;
     $LabelAlpha = isset($Format["LabelAlpha"]) ? $Format["LabelAlpha"] : 100;
     $Cf = isset($Format["Cf"]) ? $Format["Cf"] : 20;
     $WriteValues = isset($Format["WriteValues"]) ? $Format["WriteValues"] : PIE_VALUE_NATURAL;
     $ValuePadding = isset($Format["ValuePadding"]) ? $Format["ValuePadding"] : $SliceHeight + 15;
     $ValuePosition = isset($Format["ValuePosition"]) ? $Format["ValuePosition"] : PIE_VALUE_OUTSIDE;
     $ValueSuffix = isset($Format["ValueSuffix"]) ? $Format["ValueSuffix"] : "";
     $ValueR = isset($Format["ValueR"]) ? $Format["ValueR"] : 255;
     $ValueG = isset($Format["ValueG"]) ? $Format["ValueG"] : 255;
     $ValueB = isset($Format["ValueB"]) ? $Format["ValueB"] : 255;
     $ValueAlpha = isset($Format["ValueAlpha"]) ? $Format["ValueAlpha"] : 100;
     $RecordImageMap = isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : false;
     /* Error correction for overlaying rounded corners */
     if ($SkewFactor < 0.5) {
         $SkewFactor = 0.5;
     }
     /* Data Processing */
     $Data = $this->pDataObject->getData();
     $Palette = $this->pDataObject->getPalette();
     /* Do we have an abscissa serie defined? */
     if ($Data["Abscissa"] == "") {
         return PIE_NO_ABSCISSA;
     }
     /* Try to find the data serie */
     $DataSerie = null;
     foreach ($Data["Series"] as $SerieName => $SerieData) {
         if ($SerieName != $Data["Abscissa"]) {
             $DataSerie = $SerieName;
         }
     }
     /* Do we have data to compute? */
     if (!$DataSerie) {
         return PIE_NO_DATASERIE;
     }
     /* Remove unused data */
     list($Data, $Palette) = $this->clean0Values($Data, $Palette, $DataSerie, $Data["Abscissa"]);
     /* Compute the pie sum */
     $SerieSum = $this->pDataObject->getSum($DataSerie);
     /* Do we have data to draw? */
     if ($SerieSum == 0) {
         return PIE_SUMISNULL;
     }
     /* Dump the real number of data to draw */
     $Values = array();
     foreach ($Data["Series"][$DataSerie]["Data"] as $Key => $Value) {
         if ($Value != 0) {
             $Values[] = $Value;
         }
     }
     /* Compute the wasted angular space between series */
     if (count($Values) == 1) {
         $WastedAngular = 0;
     } else {
         $WastedAngular = count($Values) * $DataGapAngle;
     }
     /* Compute the scale */
     $ScaleFactor = (360 - $WastedAngular) / $SerieSum;
     $RestoreShadow = $this->pChartObject->Shadow;
     if ($this->pChartObject->Shadow) {
         $this->pChartObject->Shadow = false;
     }
     /* Draw the polygon ring elements */
     $Offset = 360;
     $ID = count($Values) - 1;
     $Values = array_reverse($Values);
     $Slice = 0;
     $Slices = array();
     $SliceColors = array();
     $Visible = array();
     $SliceAngle = array();
     foreach ($Values as $Key => $Value) {
         if (!isset($Palette[$ID]["R"])) {
             $Color = $this->pChartObject->getRandomColor();
             $Palette[$ID] = $Color;
             $this->pDataObject->savePalette($ID, $Color);
         }
         $Settings = array("R" => $Palette[$ID]["R"], "G" => $Palette[$ID]["G"], "B" => $Palette[$ID]["B"], "Alpha" => $Palette[$ID]["Alpha"]);
//.........这里部分代码省略.........
开发者ID:iansltx,项目名称:c-pchart,代码行数:101,代码来源:Pie.php

示例4: drawBubbleChart

 public function drawBubbleChart($DataSeries, $WeightSeries, $Format = "")
 {
     $ForceAlpha = isset($Format["ForceAlpha"]) ? $Format["ForceAlpha"] : VOID;
     $DrawBorder = isset($Format["DrawBorder"]) ? $Format["DrawBorder"] : true;
     $BorderWidth = isset($Format["BorderWidth"]) ? $Format["BorderWidth"] : 1;
     $Shape = isset($Format["Shape"]) ? $Format["Shape"] : BUBBLE_SHAPE_ROUND;
     $Surrounding = isset($Format["Surrounding"]) ? $Format["Surrounding"] : null;
     $BorderR = isset($Format["BorderR"]) ? $Format["BorderR"] : 0;
     $BorderG = isset($Format["BorderG"]) ? $Format["BorderG"] : 0;
     $BorderB = isset($Format["BorderB"]) ? $Format["BorderB"] : 0;
     $BorderAlpha = isset($Format["BorderAlpha"]) ? $Format["BorderAlpha"] : 30;
     $RecordImageMap = isset($Format["RecordImageMap"]) ? $Format["RecordImageMap"] : false;
     if (!is_array($DataSeries)) {
         $DataSeries = array($DataSeries);
     }
     if (!is_array($WeightSeries)) {
         $WeightSeries = array($WeightSeries);
     }
     $Data = $this->pDataObject->getData();
     $Palette = $this->pDataObject->getPalette();
     if (isset($Data["Series"]["BubbleFakePositiveSerie"])) {
         $this->pDataObject->setSerieDrawable("BubbleFakePositiveSerie", false);
     }
     if (isset($Data["Series"]["BubbleFakeNegativeSerie"])) {
         $this->pDataObject->setSerieDrawable("BubbleFakeNegativeSerie", false);
     }
     $this->resetSeriesColors();
     list($XMargin, $XDivs) = $this->pChartObject->scaleGetXSettings();
     foreach ($DataSeries as $Key => $SerieName) {
         $AxisID = $Data["Series"][$SerieName]["Axis"];
         $Mode = $Data["Axis"][$AxisID]["Display"];
         $Format = $Data["Axis"][$AxisID]["Format"];
         $Unit = $Data["Axis"][$AxisID]["Unit"];
         if (isset($Data["Series"][$SerieName]["Description"])) {
             $SerieDescription = $Data["Series"][$SerieName]["Description"];
         } else {
             $SerieDescription = $SerieName;
         }
         $XStep = ($this->pChartObject->GraphAreaX2 - $this->pChartObject->GraphAreaX1 - $XMargin * 2) / $XDivs;
         $X = $this->pChartObject->GraphAreaX1 + $XMargin;
         $Y = $this->pChartObject->GraphAreaY1 + $XMargin;
         $Color = array("R" => $Palette[$Key]["R"], "G" => $Palette[$Key]["G"], "B" => $Palette[$Key]["B"], "Alpha" => $Palette[$Key]["Alpha"]);
         if ($ForceAlpha != VOID) {
             $Color["Alpha"] = $ForceAlpha;
         }
         if ($DrawBorder) {
             if ($BorderWidth != 1) {
                 if ($Surrounding != null) {
                     $BorderR = $Palette[$Key]["R"] + $Surrounding;
                     $BorderG = $Palette[$Key]["G"] + $Surrounding;
                     $BorderB = $Palette[$Key]["B"] + $Surrounding;
                 }
                 if ($ForceAlpha != VOID) {
                     $BorderAlpha = $ForceAlpha / 2;
                 }
                 $BorderColor = array("R" => $BorderR, "G" => $BorderG, "B" => $BorderB, "Alpha" => $BorderAlpha);
             } else {
                 $Color["BorderAlpha"] = $BorderAlpha;
                 if ($Surrounding != null) {
                     $Color["BorderR"] = $Palette[$Key]["R"] + $Surrounding;
                     $Color["BorderG"] = $Palette[$Key]["G"] + $Surrounding;
                     $Color["BorderB"] = $Palette[$Key]["B"] + $Surrounding;
                 } else {
                     $Color["BorderR"] = $BorderR;
                     $Color["BorderG"] = $BorderG;
                     $Color["BorderB"] = $BorderB;
                 }
                 if ($ForceAlpha != VOID) {
                     $Color["BorderAlpha"] = $ForceAlpha / 2;
                 }
             }
         }
         foreach ($Data["Series"][$SerieName]["Data"] as $iKey => $Point) {
             $Weight = $Point + $Data["Series"][$WeightSeries[$Key]]["Data"][$iKey];
             $PosArray = $this->pChartObject->scaleComputeY($Point, array("AxisID" => $AxisID));
             $WeightArray = $this->pChartObject->scaleComputeY($Weight, array("AxisID" => $AxisID));
             if ($Data["Orientation"] == SCALE_POS_LEFTRIGHT) {
                 if ($XDivs == 0) {
                     $XStep = 0;
                 } else {
                     $XStep = ($this->pChartObject->GraphAreaX2 - $this->pChartObject->GraphAreaX1 - $XMargin * 2) / $XDivs;
                 }
                 $Y = floor($PosArray);
                 $CircleRadius = floor(abs($PosArray - $WeightArray) / 2);
                 if ($Shape == BUBBLE_SHAPE_SQUARE) {
                     if ($RecordImageMap) {
                         $this->pChartObject->addToImageMap("RECT", floor($X - $CircleRadius) . "," . floor($Y - $CircleRadius) . "," . floor($X + $CircleRadius) . "," . floor($Y + $CircleRadius), $this->pChartObject->toHTMLColor($Palette[$Key]["R"], $Palette[$Key]["G"], $Palette[$Key]["B"]), $SerieDescription, $Data["Series"][$WeightSeries[$Key]]["Data"][$iKey]);
                     }
                     if ($BorderWidth != 1) {
                         $this->pChartObject->drawFilledRectangle($X - $CircleRadius - $BorderWidth, $Y - $CircleRadius - $BorderWidth, $X + $CircleRadius + $BorderWidth, $Y + $CircleRadius + $BorderWidth, $BorderColor);
                         $this->pChartObject->drawFilledRectangle($X - $CircleRadius, $Y - $CircleRadius, $X + $CircleRadius, $Y + $CircleRadius, $Color);
                     } else {
                         $this->pChartObject->drawFilledRectangle($X - $CircleRadius, $Y - $CircleRadius, $X + $CircleRadius, $Y + $CircleRadius, $Color);
                     }
                 } elseif ($Shape == BUBBLE_SHAPE_ROUND) {
                     if ($RecordImageMap) {
                         $this->pChartObject->addToImageMap("CIRCLE", floor($X) . "," . floor($Y) . "," . floor($CircleRadius), $this->pChartObject->toHTMLColor($Palette[$Key]["R"], $Palette[$Key]["G"], $Palette[$Key]["B"]), $SerieDescription, $Data["Series"][$WeightSeries[$Key]]["Data"][$iKey]);
                     }
                     if ($BorderWidth != 1) {
                         $this->pChartObject->drawFilledCircle($X, $Y, $CircleRadius + $BorderWidth, $BorderColor);
//.........这里部分代码省略.........
开发者ID:szymach,项目名称:c-pchart,代码行数:101,代码来源:Bubble.php


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