繁体   English   中英

如何在jpgraph页面中嵌入php代码

[英]How to embed php code within jpgraph page

下面是我的jp图形代码

            include_once ("jpgraph/jpgraph.php");
            include_once ("jpgraph/jpgraph_scatter.php");

            // Some data for the points
            $datax = array(3.5,13.7,3,4,6.2,6,3.5,8,14,8,11.1,13.7);
            $datay = array(10,22,12,13,17,20,16,19,30,31,40,43);

            // A new scatter graph
            $graph = new Graph(300,200,'auto');
            $graph->SetShadow();
            $graph->SetScale("linlin");

            //$graph->img->SetMargin(40,40,40,40);        

            $graph->title->Set("Scatter plot with Image Map");
            $graph->title->SetFont(FF_FONT1,FS_BOLD);

            // Client side image map targets
            $targ=array("pie_csimex1.php#1","pie_csimex1.php#2","pie_csimex1.php#3",
            "pie_csimex1.php#4","pie_csimex1.php#5","pie_csimex1.php#6",
            "pie_csimex1.php#7","pie_csimex1.php#8","pie_csimex1.php#9" );

            // Strings to put as "alts" (and "title" value)
            $alts=array("val=%d","val=%d","val=%d","val=%d","val=%d","val=%d","val=%d","val=%d","val=%d");

            // Create a new scatter plot
            $sp1 = new ScatterPlot($datay,$datax);

            // Use diamonds as markerss
            $sp1->mark->SetType(MARK_DIAMOND);
            $sp1->mark->SetWidth(10);

            // Set the scatter plot image map targets
            $sp1->SetCSIMTargets($targ,$alts);

            // Add the plot
            $graph->Add($sp1);

            // Send back the HTML page which will call this script again
            // to retrieve the image.
            $graph->StrokeCSIM();

上面的代码通过显示分散的图形可以正常工作...但是我想在同一页面中嵌入一些php代码,如果我这样做是行不通的。...根据一些专家的建议,我替换了$graph->StrokeCSIM();

与`$ fileName =“ ./lang/12345.png”; $ graph-> img-> Stream($ fileName);

            echo('<img src="./lang/12345.png" />');`

它使用12345.png创建一个文件,并且不显示图形...我该如何解决?

用代码更新了问题。

            $_GET['Variance']=$Variance;
            $_GET['Emp_RecFactor']=$Emp_RecFactor;


            // Some data for the points
            $datax =$Emp_RecFactor;
            $datay =$Variance;



            // A new scatter graph
            $graph = new Graph(600,600);
            $graph->SetScale('intlin',-10,10,0,100);
            $graph->yscale->ticks->Set(1);
            $graph->xscale->ticks->Set(5);

            //$graph->img->SetMargin(40,40,40,40);        

             $graph->xaxis->title->Set("Reco-Factor");
            $graph->yaxis->title->Set("Variance");
            $graph->title->Set("Equity Graph Of All Employees");
            $graph->title->SetFont(FF_FONT1,FS_BOLD);

            // Client side image map targets
            $targ=array("pie_csimex1.php#1","pie_csimex1.php#2","pie_csimex1.php#3",
            "pie_csimex1.php#4","pie_csimex1.php#5","pie_csimex1.php#6",
            "pie_csimex1.php#7","pie_csimex1.php#8","pie_csimex1.php#9" );

            // Strings to put as "alts" (and "title" value)
            $alts=array("val=%d","val=%d","val=%d","val=%d","val=%d","val=%d","val=%d","val=%d","val=%d");

            // Create a new scatter plot
            $sp1 = new ScatterPlot($datay,$datax);

            // Use diamonds as markerss
            $sp1->mark->SetType(MARK_DIAMOND);
            $sp1->mark->SetWidth(10);

            // Set the scatter plot image map targets
            $sp1->SetCSIMTargets($targ,$alts);

            // Add the plot
            $graph->Add($sp1);

            // Send back the HTML page which will call this script again
            // to retrieve the image.



            $graph->Strokecsim();

test2.php包含...

            echo "<p>hello</p>";
            include "Talent_Graphcopy.php"; // containing the graph code
            echo "<p>goodbye</p>";

$ graph-> StrokeCSIM()生成图像图形式的图。 包含此代码的PHP(我们称其为图形脚本)能够生成支持的HTML和图形图像本身。

当不带参数调用图形脚本时(例如, http : //contoso.com/graph.php ),将生成HTML。 生成的HTML包含一个IMG标签,该标签指向带有魔术参数的脚本本身(例如<img src="graph.php?_jpg_csimd=1" )。 当使用magic参数调用脚本时,将生成图像。

您不能将产生HTML输出的PHP代码放入图形脚本中,因为这会阻止图像生成功能正常工作。 如果要将自定义HTML与图形输出混合,则可以将图形脚本包含在另一个PHP脚本中。

例如Display.php

echo "<p>hello</p>";
include "Talent_Graphcopy.php"; // containing the graph code
echo "<p>goodbye</p>";

Talent_Graphcopy.php

// fancy graph code...
$graph->StrokeCSIM("Talent_Graphcopy.php"); 

将图形脚本的名称指定为StrokeCSIM的参数。 它告诉脚本将IMG SRC设置为指向图形脚本本身以生成图形。 如果未指定,IMG SRC将指向Display.php ...,这是错误的,因为浏览器将要求Display.php提供图像,但显然它无法提供该图像。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM