Subversion-Projekte lars-tiefland.cienc

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
9 lars 1
<!DOCTYPE html>
2
 
3
<html>
4
<head>
5
 
6
    <title>AJAX and JSON Data Loading via Data Renderers</title>
7
 
8
    <link class="include" rel="stylesheet" type="text/css" href="../jquery.jqplot.min.css" />
9
    <link rel="stylesheet" type="text/css" href="examples.min.css" />
10
    <link type="text/css" rel="stylesheet" href="syntaxhighlighter/styles/shCoreDefault.min.css" />
11
    <link type="text/css" rel="stylesheet" href="syntaxhighlighter/styles/shThemejqPlot.min.css" />
12
 
13
    <!--[if lt IE 9]><script language="javascript" type="text/javascript" src="../excanvas.js"></script><![endif]-->
14
    <script class="include" type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
15
 
16
 
17
</head>
18
<body>
19
    <div id="header">
20
        <div class="nav">
21
            <a class="nav" href="../../../index.php"><span>&gt;</span>Home</a>
22
            <a class="nav"  href="../../../docs/"><span>&gt;</span>Docs</a>
23
            <a class="nav"  href="../../download/"><span>&gt;</span>Download</a>
24
            <a class="nav" href="../../../info.php"><span>&gt;</span>Info</a>
25
            <a class="nav"  href="../../../donate.php"><span>&gt;</span>Donate</a>
26
        </div>
27
    </div>
28
    <div class="colmask leftmenu">
29
      <div class="colleft">
30
        <div class="col1" id="example-content">
31
 
32
 
33
<!-- Example scripts go here -->
34
 
35
<p>Data renderers allow jqPlot to pull data from any external source (e.g. a function implementing an AJAX call).  Simply assign the external source to the "dataRenderer" plot option.  The only requirement on data renderers is that it must return a valid jqPlot data array.</p>
36
 
37
<div id="chart1" style="height:300px; width:500px;"></div>
38
 
39
<pre class="code prettyprint brush: js"></pre>
40
 
41
 
42
<p>Data renderers get passed options by the plot.  The signiture for a data renderer is:</p>
43
 
44
 
45
<pre class="brush: js">
46
function(userData, plotObject, options) {
47
  ...
48
  return data;
49
}
50
</pre>
51
 
52
 
53
<p>Where userData is whatever data was passed into the plot, plotObject is a reference back to the plot itself, and options are any options passed into the plots "dataRendererOption" option.  The following example shows a more complicated example which uses ajax pulls data from an external json data source.</p>
54
 
55
<div id="chart2" style="height:300px; width:500px;"></div>
56
 
57
<pre class="code prettyprint brush: js"></pre>
58
 
59
 
60
<script class="code" type="text/javascript">
61
$(document).ready(function(){
62
  // Our data renderer function, returns an array of the form:
63
  // [[[x1, sin(x1)], [x2, sin(x2)], ...]]
64
  var sineRenderer = function() {
65
    var data = [[]];
66
    for (var i=0; i<13; i+=0.5) {
67
      data[0].push([i, Math.sin(i)]);
68
    }
69
    return data;
70
  };
71
 
72
  // we have an empty data array here, but use the "dataRenderer"
73
  // option to tell the plot to get data from our renderer.
74
  var plot1 = $.jqplot('chart1',[],{
75
      title: 'Sine Data Renderer',
76
      dataRenderer: sineRenderer
77
  });
78
});
79
</script>
80
 
81
 
82
<script class="code" type="text/javascript">
83
$(document).ready(function(){
84
  // Our ajax data renderer which here retrieves a text file.
85
  // it could contact any source and pull data, however.
86
  // The options argument isn't used in this renderer.
87
  var ajaxDataRenderer = function(url, plot, options) {
88
    var ret = null;
89
    $.ajax({
90
      // have to use synchronous here, else the function
91
      // will return before the data is fetched
92
      async: false,
93
      url: url,
94
      dataType:"json",
95
      success: function(data) {
96
        ret = data;
97
      }
98
    });
99
    return ret;
100
  };
101
 
102
  // The url for our json data
103
  var jsonurl = "./jsondata.txt";
104
 
105
  // passing in the url string as the jqPlot data argument is a handy
106
  // shortcut for our renderer.  You could also have used the
107
  // "dataRendererOptions" option to pass in the url.
108
  var plot2 = $.jqplot('chart2', jsonurl,{
109
    title: "AJAX JSON Data Renderer",
110
    dataRenderer: ajaxDataRenderer,
111
    dataRendererOptions: {
112
      unusedOptionalUrl: jsonurl
113
    }
114
  });
115
});
116
</script>
117
 
118
 
119
<!-- End example scripts -->
120
 
121
<!-- Don't touch this! -->
122
 
123
 
124
    <script class="include" type="text/javascript" src="../jquery.jqplot.min.js"></script>
125
    <script type="text/javascript" src="syntaxhighlighter/scripts/shCore.min.js"></script>
126
    <script type="text/javascript" src="syntaxhighlighter/scripts/shBrushJScript.min.js"></script>
127
    <script type="text/javascript" src="syntaxhighlighter/scripts/shBrushXml.min.js"></script>
128
<!-- End Don't touch this! -->
129
 
130
<!-- Additional plugins go here -->
131
 
132
    <script class="include" language="javascript" type="text/javascript" src="../plugins/jqplot.json2.min.js"></script>
133
 
134
<!-- End additional plugins -->
135
 
136
        </div>
137
         <div class="col2">
138
 
139
           <div class="example-link"><a class="example-link" href="data-renderers.html">AJAX and JSON Data Loading via Data Renderers</a></div>
140
           <div class="example-link"><a class="example-link" href="barLineAnimated.html">Animated Charts</a></div>
141
           <div class="example-link"><a class="example-link" href="dashboardWidget.html">Animated Dashboard Sample - Filled Line with Log Axis</a></div>
142
           <div class="example-link"><a class="example-link" href="kcp_area.html">Area Chart</a></div>
143
           <div class="example-link"><a class="example-link" href="kcp_area2.html">Area Chart 2</a></div>
144
           <div class="example-link"><a class="example-link" href="axisLabelTests.html">Axis Labels</a></div>
145
           <div class="example-link"><a class="example-link" href="axisLabelsRotatedText.html">Axis Labels and Rotated Text</a></div>
146
           <div class="example-link"><a class="example-link" href="barTest.html">Bar Charts</a></div>
147
           <div class="example-link"><a class="example-link" href="multipleBarColors.html">Bar Colors Example</a></div>
148
           <div class="example-link"><a class="example-link" href="bezierCurve.html">Bezier Curve Plots</a></div>
149
           <div class="example-link"><a class="example-link" href="blockPlot.html">Block Plots</a></div>
150
           <div class="example-link"><a class="example-link" href="bubbleChart.html">Bubble Charts</a></div>
151
           <div class="example-link"><a class="example-link" href="bubble-plots.html">Bubble Plots</a></div>
152
           <div class="example-link"><a class="example-link" href="candlestick.html">Candlestick and Open Hi Low Close Charts</a></div>
153
           <div class="example-link"><a class="example-link" href="theming.html">Chart Theming</a></div>
154
           <div class="example-link"><a class="example-link" href="fillBetweenLines.html">Charts with Fill Between Lines</a></div>
155
           <div class="example-link"><a class="example-link" href="kcp_cdf.html">Cumulative Density Function Chart</a></div>
156
           <div class="example-link"><a class="example-link" href="dashedLines.html">Dashed Lines with Smoothing</a></div>
157
           <div class="example-link"><a class="example-link" href="cursor-highlighter.html">Data Point Highlighting, Tooltips and Cursor Tracking</a></div>
158
           <div class="example-link"><a class="example-link" href="point-labels.html">Data Point labels</a></div>
159
           <div class="example-link"><a class="example-link" href="date-axes.html">Date Axes</a></div>
160
           <div class="example-link"><a class="example-link" href="dateAxisRenderer.html">Date Axes 2</a></div>
161
           <div class="example-link"><a class="example-link" href="rotatedTickLabelsZoom.html">Date Axes, Rotated Labels and Zooming</a></div>
162
           <div class="example-link"><a class="example-link" href="canvas-overlay.html">Draw Lines on Plots - Canvas Overlay</a></div>
163
           <div class="example-link"><a class="example-link" href="draw-rectangles.html">Draw Rectangles on Plots</a></div>
164
           <div class="example-link"><a class="example-link" href="kcp_engel.html">Engel Curves</a></div>
165
           <div class="example-link"><a class="example-link" href="bandedLine.html">Error Bands and Confidence Intervals</a></div>
166
           <div class="example-link"><a class="example-link" href="area.html">Filled (Area) Charts</a></div>
167
           <div class="example-link"><a class="example-link" href="axisScalingForceTickAt.html">Force Plot to Have Tick at 0 or 100</a></div>
168
           <div class="example-link"><a class="example-link" href="hiddenPlotsInTabs.html">Hidden Plots</a></div>
169
           <div class="example-link"><a class="example-link" href="customHighlighterCursorTrendline.html">Highlighting, Dragging Points, Cursor and Trend Lines</a></div>
170
           <div class="example-link"><a class="example-link" href="line-charts.html">Line Charts and Options</a></div>
171
           <div class="example-link"><a class="example-link" href="kcp_lorenz.html">Lorenz Curves</a></div>
172
           <div class="example-link"><a class="example-link" href="mekkoCharts.html">Mekko Charts</a></div>
173
           <div class="example-link"><a class="example-link" href="meterGauge.html">Meter Gauge</a></div>
174
           <div class="example-link"><a class="example-link" href="candlestick-charts.html">Open Hi Low Close and Candlestick Charts</a></div>
175
           <div class="example-link"><a class="example-link" href="pieTest.html">Pie Charts and Options</a></div>
176
           <div class="example-link"><a class="example-link" href="pieTest4.html">Pie Charts and Options 2</a></div>
177
           <div class="example-link"><a class="example-link" href="pie-donut-charts.html">Pie and Donut Charts</a></div>
178
           <div class="example-link"><a class="example-link" href="selectorSyntax.html">Plot Creation with jQuery Selectors</a></div>
179
           <div class="example-link"><a class="example-link" href="zooming.html">Plot Zooming and Cursor Control</a></div>
180
           <div class="example-link"><a class="example-link" href="kcp_pdf.html">Probability Density Function Chart</a></div>
181
           <div class="example-link"><a class="example-link" href="kcp_pyramid_by_age.html">Pyramid Chart By Age</a></div>
182
           <div class="example-link"><a class="example-link" href="kcp_pyramid.html">Pyramid Charts</a></div>
183
           <div class="example-link"><a class="example-link" href="kcp_pyramid2.html">Pyramid Charts 2</a></div>
184
           <div class="example-link"><a class="example-link" href="kcp_quintiles.html">Quintile Pyramid Charts</a></div>
185
           <div class="example-link"><a class="example-link" href="resizablePlot.html">Resizable Plots</a></div>
186
           <div class="example-link"><a class="example-link" href="rotated-tick-labels.html">Rotated Labels and Font Styling</a></div>
187
           <div class="example-link"><a class="example-link" href="smoothedLine.html">Smoothed Lines</a></div>
188
           <div class="example-link"><a class="example-link" href="bar-charts.html">Vertical and Horizontal Bar Charts</a></div>
189
           <div class="example-link"><a class="example-link" href="waterfall.html">Waterfall Charts</a></div>
190
           <div class="example-link"><a class="example-link" href="waterfall2.html">Waterfall Charts 2</a></div>
191
           <div class="example-link"><a class="example-link" href="zoomOptions.html">Zoom Options</a></div>
192
           <div class="example-link"><a class="example-link" href="zoomProxy.html">Zoom Proxy - Control one plot from another</a></div>
193
           <div class="example-link"><a class="example-link" href="zoom1.html">Zooming</a></div>
194
           <div class="example-link"><a class="example-link" href="dateAxisLogAxisZooming.html">Zooming with Date and Log Axes</a></div>
195
 
196
         </div>
197
               </div>
198
    </div>
199
    <script type="text/javascript" src="example.min.js"></script>
200
 
201
</body>
202
 
203
 
204
</html>