【问题标题】:TeeChart for PHP : Differences between image render and JavaScript ExportTeeChart for PHP : 图像渲染和 JavaScript 导出之间的差异
【发布时间】:2015-09-03 21:37:33
【问题描述】:

我尝试为 PHP 使用 TeeChart 的右轴。我知道我们需要将有效的系列链接到两个垂直轴。事实上,我已经在 Steema 网站上使用自定义轴演示进行了简单的测试。我剪切并粘贴了演示并尝试将其导出到 javascript 而不是渲染它。 我使用此代码导出到 javascript:

echo  $tChart1->getChart()->getExport()->getImage()->getJavaScript()->Render()->toString();

Here 是 2 个并排渲染的快照(抱歉放在链接中,这个论坛还不允许我发布图片...)

有没有办法让正确的轴与导出一起显示?

编辑: 这是您要测试的代码:

<?php 
    //Includes 
    include "../../../sources/TChart.php"; 

    $chart1 = new TChart(600,450); 
    $chart1->getChart()->getHeader()->setText("Custom Axes Demo"); 
    $chart1->getAspect()->setView3D(false); 

    $line1 = new Line($chart1->getChart()); 
    $line2 = new Line($chart1->getChart()); 
    $line1->setColor(Color::RED()); 
    $line2->setColor(Color::GREEN()); 
    $chart1->addSeries($line1); 
    $chart1->addSeries($line2); 

    // Speed optimization 
    $chart1->getChart()->setAutoRepaint(false); 

    for($t = 0; $t <= 10; ++$t) { 
      $line1->addXY($t, (10 + $t), Color::RED()); 
      if($t > 1) { 
        $line2->addXY($t, $t, Color::GREEN()); 
      } 
    }  

    $chart1->getAxes()->getLeft()->setStartPosition(0); 
    $chart1->getAxes()->getLeft()->setEndPosition(50);         
    $chart1->getAxes()->getLeft()->getAxisPen()->color = Color::RED(); 
    $chart1->getAxes()->getLeft()->getTitle()->getFont()->setColor(Color::RED()); 
    $chart1->getAxes()->getLeft()->getTitle()->getFont()->setBold(true); 
    $chart1->getAxes()->getLeft()->getTitle()->setText("1st Left Axis"); 

    $chart1->getAxes()->getTop()->getLabels()->setAngle(45); 
    $chart1->getAxes()->getTop()->getTitle()->getFont()->setColor(Color::YELLOW()); 
    $chart1->getAxes()->getTop()->getTitle()->getFont()->setBold(true); 

    $chart1->getAxes()->getBottom()->getLabels()->setAngle(0); 
    $chart1->getAxes()->getRight()->getLabels()->setAngle(45); 
    $chart1->getAxes()->getBottom()->getTitle()->getFont()->setColor(new Color(255,25,25)); 
    $chart1->getAxes()->getBottom()->getTitle()->getFont()->setBold(true); 
    $chart1->getAxes()->getRight()->getTitle()->getFont()->setColor(Color::BLUE()); 
    $chart1->getAxes()->getRight()->getTitle()->getFont()->setBold(true); 
    $chart1->getAxes()->getRight()->getTitle()->setText("OtherSide Axis"); 
    $chart1->getAxes()->getRight()->getLabels()->getFont()->setColor(Color::BLUE()); 
    $chart1->getAxes()->getRight()->getAxisPen()->setColor(Color::BLUE());         

    $chart1->getAxes()->getTop()->getTitle()->setText("Top Axis"); 
    $chart1->getAxes()->getBottom()->getTitle()->setText("Bottom Axis"); 

    $line1->setHorizontalAxis(HorizontalAxis::$BOTH); 
    $line1->setVerticalAxis(VerticalAxis::$BOTH); 

    $axis1 = new Axis(false, false, $chart1->getChart()); 
    $chart1->getAxes()->getCustom()->add($axis1); 
    $line2->setCustomVertAxis($axis1); 
    $axis1->setStartPosition(50); 
    $axis1->setEndPosition(100); 
    $axis1->getTitle()->getFont()->setColor(Color::GREEN());         
    $axis1->getTitle()->getFont()->setBold(true); 
    $axis1->getTitle()->setText("Extra Axis"); 
    $axis1->getTitle()->setAngle(90); 
    $axis1->setRelativePosition(20); 
    $axis1->getAxisPen()->setColor(Color::GREEN()); 
    $axis1->getGrid()->setVisible(false); 

    echo  $tChart1->getChart()->getExport()->getImage()->getJavaScript()->Render()->toString();?>

【问题讨论】:

  • 我无权查看该快照
  • 现在每个人都应该可以访问了。抱歉,第一次使用 Google Drive 访问管理。
  • 我明白了。您能否安排一个简单的示例测试项目,我们可以按原样运行以在此处重现问题?
  • @Yeray 查看我对原始帖子的编辑...

标签: php teechart


【解决方案1】:

我已经修改了您的测试页面的末尾以在同一页面上显示 HTML5 和 PHP 图表:

echo  $chart1->getChart()->getExport()->getImage()->getJavaScript()->Render()->toString();
$chart1->render("chart1.png");
$rand=rand();
print '<img src="chart1.png?rand='.$rand.'">';

然后,我修改了 TeeChart PHP 源以导出自定义轴和分配。

现在看起来像这样:

请发送邮件至“info@st​​eema.com”,我们会将修改后的单元 (JavaScriptExport.php) 发送给您。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-01
    • 2013-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多