php - generating graph with static data using Google Charts -
i want generate graph static data. using google chart doing this. here google chart code
<html> <head> <script type="text/javascript" src="https://www.google.com/jsapi"></script> <script type="text/javascript"> google.load("visualization", "1", {packages:["corechart"]}); google.setonloadcallback(drawchart); function drawchart() { var data = google.visualization.arraytodatatable([ ['task', 'hours per day'], ['work', 11], ['eat', 2], ['commute', 2], ['watch tv', 2], ['sleep', 7] ]); var options = { title: 'my daily activities' }; var chart = new google.visualization.piechart(document.getelementbyid('chart_div')); chart.draw(data, options); } </script> </head> <body> <div id="chart_div" style="width: 900px; height: 500px;"></div> </body> </html>
but want put code in this. not getting how it. here code
<?php echo '<div align="center" style="width:100%; padding-top:20px;"> <table width="100%" cellspacing="0" cellpadding="0" border="0"> <tr> <td class=tddash>10 latest purchase orders</td> </tr> <tr> <td>'; $sql = 'select purchorders.orderno, suppliers.suppname, purchorders.orddate, purchorders.deliverydate, purchorders.initiator, purchorders.requisitionno, purchorders.allowprint, purchorders.status, suppliers.currcode, currencies.decimalplaces currdecimalplaces, sum(purchorderdetails.unitprice*purchorderdetails.quantityord) ordervalue purchorders inner join purchorderdetails on purchorders.orderno = purchorderdetails.orderno inner join suppliers on purchorders.supplierno = suppliers.supplierid inner join currencies on suppliers.currcode=currencies.currabrev purchorders.orderno=purchorderdetails.orderno group purchorders.orderno, suppliers.suppname, purchorders.orddate, purchorders.initiator, purchorders.requisitionno, purchorders.allowprint, purchorders.status, suppliers.currcode, currencies.decimalplaces limit 5'; $salesordersresult2 = db_query($sql,$db); $total = 0; echo '<table width="100%" celpadding="2" class="selection">'; echo '<tbody><tr><th> supplier </th><th>order date</th><th>delivery date</th><th>initiator</th><th>order total</th><th>status</th></tr></tbody> '; $k=0; while ($row = db_fetch_array($salesordersresult2)) //while ($row = mysql_fetch_array($salesordersresult)) { if ($k == 1){ echo '<tr class="eventablerows">'; $k = 0; } else { echo '<tr class="oddtablerows">'; $k = 1; } $formatedordervalue2 = locale_number_format($row['ordervalue'],$row['currdecimalplaces']); $total += $row['ordervalue']; //$formatedordervalue1 = locale_number_format($myrow['ordervalue'],$_session['companyrecord']['decimalplaces']); $formatedorderdate1 = convertsqldate($row['orddate']); $formateddeldate1 = convertsqldate($row['deliverydate']); echo ' <td> ' . $row['suppname'] . ' </td>'; echo ' <td>$formatedorderdate1</td><td>$formateddeldate1</td><td> ' . $row['initiator'] . ' </td><td>$formatedordervalue2</td><td> ' . $row['status'] . ' </td> '; } echo '<tr><td colspan="3">total---</td><td colspan="2">$total</td></tr></tbody>'; echo '</table></td>'; echo' </tr> </table> </div>';
can plz me in this?
* edited *
echo '<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" type="text/javascript"></script>'; echo ' <script type="text/javascript"> function drawchart() { var jsondata = $.ajax({ url: "1getdata.php", datatype:"json", async: false }).responsetext; alert(jsondata); var data = new google.visualization.datatable(jsondata); var view = new google.visualization.dataview(data); view.setcolumns([0, 3]); var chart = new google.visualization.columnchart(document.getelementbyid("chart_div")); chart.draw(view, {width:400, height:240}); } google.load("visualization", "1", {packages:["corechart"]}); google.setonloadcallback(drawchart); </script>'; echo '</head>'; <div id="chart_div" ></div>
1getdata.php
<?php $pagesecurity=0; include('includes/session.inc'); if (!isset($rootpath)){ $rootpath = dirname(htmlspecialchars($_server['php_self'])); if ($rootpath == '/' or $rootpath == "\\") { $rootpath = ''; } } $sql = "select workorders.wo, woitems.stockid, stockmaster.description, stockmaster.decimalplaces, woitems.qtyreqd, woitems.qtyrecd, workorders.requiredby, workorders.startdate workorders inner join woitems on workorders.wo = woitems.wo inner join stockmaster on woitems.stockid = stockmaster.stockid order workorders.wo"; $searchresult = db_query($sql, $db); $table=array(); $table['cols']=array( array('label'=>'item', type=>'string'), array('label'=>'description', type=>'string'), array('label'=> 'qty required', type=>'number'), array('label'=>'qty outstanding', type=>'number') ); $rows=array(); while ($row = db_fetch_array($searchresult)) { $qreq = locale_number_format($row['qtyreqd'],$row['decimalplaces']); $qout = locale_number_format($row['qtyreqd']-$row['qtyrecd'],$row['decimalplaces']); $temp=array(); $temp[]=array('v' => $row['stockid']); $temp[]=array('v' => $row['description']); $temp[]=array('v' => $row['qtyreqd']); $temp[]=array('v' => ($row['qtyreqd']-$row['qtyrecd'])); $rows[]=array('c' => $temp); } $table['rows']=$rows; $jsontable = json_encode($table); print $jsontable; ?>
but displays 2 columns, want display 3
java script
<script type="text/javascript"> function drawchart() { var jsondata = $.ajax({ url: "1getdata.php", datatype:"json", async: false }).responsetext; alert(jsondata); var data = new google.visualization.datatable(jsondata); var view = new google.visualization.dataview(data); view.setcolumns([0,3]); var chart = new google.visualization.columnchart(document.getelementbyid("chart_div")); chart.draw(view, {width:400, height:240}); } google.load("visualization", "1", {packages:["corechart"]}); google.setonloadcallback(drawchart); </script>
your line view.setcolumns([0, 3])
tells google charts display first , fourth column in data. add columns want display array.
Comments
Post a Comment