如何从sql获取数据时使用php生成动态图?

时间:2011-02-21 09:38:59

标签: php

您好 我需要有关如何创建动态图表的帮助,该图表根据不同的日期从sql获取值

塞缪尔

2 个答案:

答案 0 :(得分:1)

我没有使用php或Pear的经验,但我使用GraphViz,它可以做很多事情。从任何数据源创建图形。

因此,php中的这个graphviz包装器可能对您有所帮助:http://pear.php.net/manual/en/package.images.image-graphviz.example.php

更多介绍信息here

从第二个链接中可以找到以下脚本:

    <?php
// input is $name - the person to highlight in the hierarchy
// connect to the database
   if(!($dblink=mysql_connect("shares.cems.uwe.ac.uk","cwstudent","cwstudent"))) {
     print("mysql_connect failed<br>\n");
     exit;
   }

   if(!(mysql_select_db("Emp",$dblink))) {
     print("cannot connect to database $db");
     exit;
   }
// get the hierarchy data
   $query = "select e.ename as ename, m.ename as mname from emp e , emp m where e.mgr = m.empno;";
   if(!($dbresult = mysql_query($query,$dblink))) {
        print("<b>query failed</h4><br>\n");
        print(mysql_error() . "<br>\n");
   }

   $f .= "digraph hier {\n";
   if (isset($name) ) $f .= " $name [fillcolor=red1, shape=box];\n";
   while($rep=mysql_fetch_object($dbresult)) {
       $f .= "$rep->mname  -> $rep->ename; \n"; 
   }
   $f .="}";
   mysql_close($dblink);
//set output to be GIF
   header("Content-type: image/gif");
//execute the dot program and pass thru the output back to the client
   passthru("echo '$f' | /usr/local/graphviz/bin/dot -Tgif ");


?>

有关如何对其进行编程的详细信息,请将此问题提交至stackoverflow.com

答案 1 :(得分:0)

图表是什么意思?

KeesDjijk的答案对于图表的正确含义(即一组节点和连接)是有效的,但你的意思是你在电子表格程序中得到的图表吗?如果是这样,请查看jpgraph