如何绘制从Web服务获取的数据?

时间:2013-05-28 07:03:13

标签: php xml web-services soap graph

我只有基本的PHP知识和零xml知识,我的老板要我从这个Web服务http://xx.xxx.xxx.xx:1000/Service1.asmx?WSDL调用GetWesmData。

幸运的是,通过一些谷歌工作,我发现了一组代码并且可以正常工作

<?php

$wsdl = "http://10.246.199.35:1000/Service1.asmx?WSDL";
$client = new SoapClient($wsdl);
$stock = "20130528"; //current date
$parameters= array("strDate_YYYYMMDD"=>$stock);
$value = $client->GetWesmData($parameters);     
$xml = $value->GetWesmDataResult;  

print "<pre>/n";
print_r($xml);  
print "</pre>";

?>

输出将是这样的

/nstdClass Object
(
[WESMclass] => Array
    (
        [0] => stdClass Object
            (
                [output] => Success
                [STRdata_fld] => 5/24/2013 12:00:00 AM
                [STRtime_in_hours] => 1.000
                [STRLuzdem_dapel] => 6341.4
                [STRLuzdem_rtdel] => 6301.1
                [STRLuzdem_rtxel] => 6332.6
                [STRLuzwap_dapel] => 6332.6
                [STRLuzwap_rtdel] => 3120.23
                [STRLuzwap_rtxel] => 2577.72 
            )

        [1] => stdClass Object
            (
                [output] => Success
                [STRdata_fld] => 5/24/2013 12:00:00 AM
                [STRtime_in_hours] => 2.000
                [STRLuzdem_dapel] => 6130.7
                [STRLuzdem_rtdel] => 6094.4
                [STRLuzdem_rtxel] => 6107
                [STRLuzwap_dapel] => 6107
                [STRLuzwap_rtdel] => 3081.99
                [STRLuzwap_rtxel] => 2353.18 
            )

这个数据最多可以达到23 ..我的老板想要的是使用php在线图中显示[STRLuzdem_dapel]的所有23个数据。我正在使用wampserver。

我在互联网上找到了一个名为phpgraphlib.php的图形库并使用它。现在我有一个线图的代码,它运作良好。

<?php
include('phpgraphlib.php'); //graph library
$graph = new PHPGraphLib(850,400);
$data = array("1"=>6341, "2"=>6130, "3"=>5991, "4"=>5883,
"5"=>5781, "6"=>5631, "7"=>5942, "8"=>6588, "9"=>7146,
"10"=>7486, "11"=>7800, "12"=>7709, "13"=>7719, "14"=>7970,
"15"=>7853, "16"=>7734, "17"=>7420, "18"=>7064, "19"=>7413,
"20"=>7318, "21"=>7289, "22"=>6867, "23"=>6670, );
$graph->addData($data);
$graph->setTitle('STRLuzdem_dapel');
$graph->setBars(false);
$graph->setLine(true);
$graph->setDataPoints(true);
$graph->setDataPointColor('maroon');
$graph->setDataValues(true);
$graph->setDataValueColor('maroon');
$graph->setGoalLine(0);
$graph->setGoalLineColor('red');
$graph->setXValuesHorizontal(true);
$graph->createGraph();
?>

但正如您所见,我已手动输入数据。我想要做的是从Web服务调用数据,然后获取所有[STRLuzdem_dapel]的值并将其显示在折线图中。这是我向你展示的两组代码的组合。我尝试将它组合起来并改变一些代码/变量无济于事。有人能帮我吗?感谢

0 个答案:

没有答案