Я использую pchart для создания диаграмм для приложения Zend Framework .Моя проблема в том, что я не могу заставить приложение отображать диаграмму, поскольку каждый раз получаю вышеуказанную ошибку.Я посмотрел на различные решения, связанные с проблемой, но я до сих пор не работает.Есть что-нибудь, что здесь отсутствует?Пожалуйста, обратитесь к коду
{
require 'pChart2.1.1/pChart2.1.1/class/pData.class.php';
require 'pChart2.1.1/pChart2.1.1/class/pDraw.class.php';
require 'pChart2.1.1/pChart2.1.1/class/pImage.class.php';
require 'pChart2.1.1/pChart2.1.1/class/pPie.class.php';
// action body
$users = new Application_Model_DbTable_Users();
$users = $users->listAll();
$id=$this->_getParam('id');
if($id)
{
$this->_helper->viewRenderer->setNoRender(true);
$this->_helper->layout()->disableLayout();
$response=$this->getResponse();
$response->clearBody('top_menu');
$response->clearAllHeaders();
if ($id == 'pdf') {
}
//request is a chart
if($id=='chart')
{
ob_start();
$departments=new Application_Model_DbTable_Departments();
$departments=$departments->fetchAll();
$departments->toArray();
$department_id="";
$department_name="";
foreach ($departments as $departments) {
$department_id[]=$departments['department_id'];
$department_name[]=$departments['department_name'];
/* pData object creation */
$MyData = new pData();
/* Data definition */
$MyData->addPoints(array(20, 30, 25, 10), "Value");
/* Labels definition */
$MyData->addPoints($department_name, "Legend");
$MyData->setAbscissa("Legend");
/* Create the pChart object */
$myPicture = new pImage(500, 500, $MyData);
/* Draw a gradient background */
$myPicture->drawGradientArea(0, 0, 500, 500,
DIRECTION_HORIZONTAL,
array("StartR" => 220, "StartG" => 220, "StartB" => 220,
"EndR" => 180, "EndG" => 180, "EndB" => 180, "Alpha" => 100));
/* Add a border to the picture */
$myPicture->drawRectangle(0, 0, 400, 400,
array("R" => 0, "G" => 0, "B" => 0));
/* Create the pPie object */
$PieChart = new pPie($myPicture, $MyData);
/* Enable shadow computing */
$myPicture->setShadow(FALSE);
/* Set the default font properties */
$myPicture->setFontProperties(
array(
"FontName" => "pChart2.1.1/pChart2.1.1/fonts/Forgotte.ttf",
"FontSize" => 10, "R" => 80, "G" => 80, "B" => 80));
/* Draw a splitted pie chart */
$PieChart->draw3DPie(200, 150,
array("Radius" => 100, "DrawLabels" => TRUE,
"DataGapAngle" => 10, "DataGapRadius" => 6, "Border" => TRUE));
/* Render the picture (choose the best way) */
header ("Content-type: image/png" );
$myPicture->Stroke("pie.png");
exit;
}
}
}