Do you want to embed the data in the page, or do you want to serve it as a 
CSV file? If you want to embed it in the page, you might need to embed it 
in some Javascript as a Javascript data structure rather than as pure HTML. 
To serve a CSV file, see http://web2py.com/books/default/chapter/29/10#CSV (you 
might be able to set the content type to 'text/csv' rather than what is 
shown in that example). You would then provide D3 with the URL that serves 
the CSV file (note, it doesn't actually generate a CSV file on the server 
-- it just uses a cStringIO object and sends its content as the HTTP 
response).

Anthony

On Monday, June 24, 2013 4:02:35 PM UTC-4, greaneym wrote:
>
> Relating to d3.js and csv files, I'm having two problems trying to get a 
> string object to load either
>
> 1. with d3.csv.parse or with
>
> 2. function() {return x; } 
>
> right after the line,
> g = new Dygraph( document.getElementById("div_pt"), 
>
> that begins to generate a d3 graph.
>
>
> The problem is similar to that on
> http://stackoverflow.com/questions/14286461/django-and-d3-js-csv-data
>
> but I don't understand how to make the url "have a text content".
>
> Also, I am having a problem understanding what it means to use
> the 
> function() return x 
>  
> as the method to return data to d3.js. I want to load a string value into x
> and have the graph display. When I use that and feed it {{=pt_data}} it 
> looks like the view source output at the bottom of this page.
>
> I am able to load a .csv file and produce a graph, but when I try to
> create a string that can be loaded into function() {return x;} and it is 
> formatted as a csv
> file, the graph doesn't load. 
> (disregard he timevalues).
>
>
> The error console on the web inspector says,
> syntax error, unexpected number, '00'
> which means it is not parsing the date+time together.
>
> Does the string have to be formatted differently from the CSV file? They
> look the same to me. How should the pt_data format in the browser's 
> 'view/source' look when it works?
>
> For reference, I read the docs files in dygraphs-master docs/data.html as 
> well as many other d3.js tutorials, but so far have not found an answer.
> This project will also use json objects, but before that I want to get the 
> csv as string object working first.
>
>
> <!DOCTYPE html>
> <html>
>   <head>
>     <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7; 
> IE=EmulateIE9">
>     <title>Summary</title>
>     <!--[if IE]>
>     <script type="text/javascript" 
> src="../../static/dygraphjs/excanvas.js"></script>
>     <![endif]-->
>
> <script src="/enp8/static/dygraphjs/dygraph-dev.js" 
> type="text/javascript"></script>
> <script src="/enp8/static/dygraphjs/d3.v3.js" 
> type="text/javascript"></script>
>
>   </head>
>   <body>
>    <h6>pt_data is Date,ENWH
> 2011/09/10 00:05,0
> 2011/09/10 00:05,0
> 2011/09/10 00:05,0
> 2011/09/10 00:05,0
> 2011/09/10 00:05,32
> 2011/09/10 00:05,246
> 2011/09/10 00:05,250
> 2011/09/10 00:05,424
> 2011/09/10 00:05,500
> 2011/09/10 00:05,678
> 2011/09/10 00:05,898
> 2011/09/10 00:05,525
> 2011/09/10 00:05,400
> 2011/09/10 00:05,379
> 2011/09/10 00:05,184
> 2011/09/10 00:05,41
> 2011/09/10 00:05,0
> 2011/09/10 00:05,0
> 2011/09/10 00:05,0
> 2011/09/10 00:05,0 </h6>
>     <p>Power Today Data:</p>
>     <div id="div_pt" style="width:600px; height:300px;"></div>
>     <script type="text/javascript">
>        g = new Dygraph( document.getElementById("div_pt"),
>          d3.csv.parse(=URL('power_today', 'index')}} ; }
>      { }
>      ); 
>
>
>     </script>
>
> <!--<table width="100%">-->
> <table width="75%">
>   <tr>
>     <h2>Summary   2011-09-10 </h2>
>     <td><h5><ul>Intervals:</h5></ul> 300</h5></td>
>     <td><h5><ul>Power (W):</h5></ul> [0, 0, 0, 0, 32, 246, 250, 424, 500, 
> 678, 898, 525, 400, 379, 184, 41, 0, 0, 0, 0]</h5></td>
>   </tr>
>   <br>
>   <br>
>   
> </table>
>
> <h5> JSON data formatted via python</h5>
>   {u&#x27;first_interval_end_date&#x27;: 
> u&#x27;2011-09-10T00:05-7:00&#x27;, u&#x27;production&#x27;: [0, 0, 0, 0, 
> 32, 246, 250, 424, 500, 678, 898, 525, 400, 379, 184, 41, 0, 0, 0, 0], 
> u&#x27;interval_length&#x27;: 300}
>
>
>
>   </body>
> </html>
>
>
>
> Thanks a lot for any help or suggestions.
>
> Margaret
>
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to