Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 6fb5393

Browse files
author
yankev
committed
bar chart stream
1 parent c9cf169 commit 6fb5393

File tree

4 files changed

+2576
-367
lines changed

4 files changed

+2576
-367
lines changed
Lines changed: 188 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,188 @@
1+
---
2+
permalink: python/bar_chart_stream/
3+
description: Getting Started with Plotly Streaming
4+
title: Bar Chart Streaming Demo
5+
has_thumbnail: true
6+
thumbnail:
7+
has_thumbnail: false
8+
layout: user-guide
9+
page_type: u-guide
10+
language: python
11+
title: Bar Chart Streaming
12+
---
13+
{% raw %}
14+
<div class="cell border-box-sizing text_cell rendered">
15+
<div class="prompt input_prompt">
16+
</div>
17+
<div class="inner_cell">
18+
<div class="text_cell_render border-box-sizing rendered_html">
19+
<h2 id="Streaming-Bar-Chart-Demo">Streaming Bar Chart Demo<a class="anchor-link" href="#Streaming-Bar-Chart-Demo">&#182;</a></h2>
20+
</div>
21+
</div>
22+
</div>
23+
<div class="cell border-box-sizing code_cell rendered">
24+
<div class="input">
25+
<div class="prompt input_prompt">In&nbsp;[4]:</div>
26+
<div class="inner_cell">
27+
<div class="input_area">
28+
<div class=" highlight hl-ipython2"><pre><span class="kn">import</span> <span class="nn">plotly.plotly</span> <span class="kn">as</span> <span class="nn">py</span>
29+
<span class="kn">import</span> <span class="nn">plotly.tools</span> <span class="kn">as</span> <span class="nn">tls</span>
30+
<span class="kn">import</span> <span class="nn">numpy</span> <span class="kn">as</span> <span class="nn">np</span>
31+
<span class="kn">import</span> <span class="nn">time</span>
32+
33+
<span class="kn">from</span> <span class="nn">plotly.graph_objs</span> <span class="kn">import</span> <span class="o">*</span>
34+
35+
<span class="kn">import</span> <span class="nn">numpy</span> <span class="kn">as</span> <span class="nn">np</span>
36+
37+
<span class="n">stream_id</span> <span class="o">=</span> <span class="s">&#39;qoy4tt6x9w&#39;</span> <span class="c">#this is the streaming token associated the account `kevintest`</span>
38+
39+
<span class="c"># We can generate a new stream ob</span>
40+
<span class="n">stream</span> <span class="o">=</span> <span class="n">Stream</span><span class="p">(</span>
41+
<span class="n">token</span><span class="o">=</span><span class="n">stream_id</span><span class="p">,</span>
42+
<span class="n">maxpoints</span><span class="o">=</span><span class="mi">80</span>
43+
<span class="p">)</span>
44+
</pre></div>
45+
46+
</div>
47+
</div>
48+
</div>
49+
50+
</div>
51+
<div class="cell border-box-sizing code_cell rendered">
52+
<div class="input">
53+
<div class="prompt input_prompt">In&nbsp;[5]:</div>
54+
<div class="inner_cell">
55+
<div class="input_area">
56+
<div class=" highlight hl-ipython2"><pre><span class="c">#A simple bar chart object is generated</span>
57+
58+
<span class="n">trace1</span> <span class="o">=</span> <span class="n">Bar</span><span class="p">(</span>
59+
<span class="n">x</span><span class="o">=</span><span class="p">[</span><span class="s">&#39;one&#39;</span><span class="p">,</span><span class="s">&#39;two&#39;</span><span class="p">,</span><span class="s">&#39;three&#39;</span><span class="p">,</span><span class="s">&#39;four&#39;</span><span class="p">,</span><span class="s">&#39;five&#39;</span><span class="p">],</span>
60+
<span class="n">y</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">([</span><span class="mi">20</span><span class="p">,</span><span class="mi">20</span><span class="p">,</span><span class="mi">20</span><span class="p">,</span><span class="mi">20</span><span class="p">,</span><span class="mi">20</span><span class="p">]),</span>
61+
<span class="n">stream</span><span class="o">=</span><span class="n">stream</span> <span class="c">#we set the stream parameter to the stream id object created earlier </span>
62+
<span class="p">)</span>
63+
64+
<span class="n">data</span> <span class="o">=</span> <span class="n">Data</span><span class="p">([</span><span class="n">trace1</span><span class="p">])</span>
65+
<span class="n">layout</span> <span class="o">=</span> <span class="n">Layout</span><span class="p">(</span><span class="n">title</span><span class="o">=</span><span class="s">&#39;Bar Chart Streaming&#39;</span><span class="p">)</span>
66+
<span class="n">fig</span> <span class="o">=</span> <span class="n">Figure</span><span class="p">(</span><span class="n">data</span><span class="o">=</span><span class="n">data</span><span class="p">,</span> <span class="n">layout</span><span class="o">=</span><span class="n">layout</span><span class="p">)</span>
67+
</pre></div>
68+
69+
</div>
70+
</div>
71+
</div>
72+
73+
</div>
74+
<div class="cell border-box-sizing code_cell rendered">
75+
<div class="input">
76+
<div class="prompt input_prompt">In&nbsp;[6]:</div>
77+
<div class="inner_cell">
78+
<div class="input_area">
79+
<div class=" highlight hl-ipython2"><pre><span class="n">py</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">fig</span><span class="p">,</span> <span class="n">filename</span><span class="o">=</span><span class="s">&#39;bar_stream&#39;</span><span class="p">)</span> <span class="c">#post this plot up onto the plotly servers</span>
80+
</pre></div>
81+
82+
</div>
83+
</div>
84+
</div>
85+
86+
<div class="output_wrapper">
87+
<div class="output">
88+
89+
90+
<div class="output_area"><div class="prompt output_prompt">Out[6]:</div>
91+
92+
93+
<div class="output_text output_subarea output_execute_result">
94+
<pre>u&apos;https://plot.ly/~kevintest/236&apos;</pre>
95+
</div>
96+
97+
</div>
98+
99+
</div>
100+
</div>
101+
102+
</div>
103+
<div class="cell border-box-sizing code_cell rendered">
104+
<div class="input">
105+
<div class="prompt input_prompt">In&nbsp;[7]:</div>
106+
<div class="inner_cell">
107+
<div class="input_area">
108+
<div class=" highlight hl-ipython2"><pre><span class="c">#Now a Stream object is created w/ the same stream_id as the stream id object associated with our bar chart</span>
109+
<span class="n">s</span> <span class="o">=</span> <span class="n">py</span><span class="o">.</span><span class="n">Stream</span><span class="p">(</span><span class="n">stream_id</span><span class="p">)</span>
110+
<span class="n">s</span><span class="o">.</span><span class="n">open</span><span class="p">()</span> <span class="c">#open a connection to start writing to the plot</span>
111+
</pre></div>
112+
113+
</div>
114+
</div>
115+
</div>
116+
117+
</div>
118+
<div class="cell border-box-sizing code_cell rendered">
119+
<div class="input">
120+
<div class="prompt input_prompt">In&nbsp;[&nbsp;]:</div>
121+
<div class="inner_cell">
122+
<div class="input_area">
123+
<div class=" highlight hl-ipython2"><pre><span class="n">i</span> <span class="o">=</span> <span class="mi">0</span> <span class="c"># a counter</span>
124+
<span class="n">N</span> <span class="o">=</span> <span class="mi">2000</span> <span class="c"># number of points to be plotted</span>
125+
126+
127+
<span class="k">while</span> <span class="n">i</span><span class="o">&lt;</span><span class="n">N</span><span class="p">:</span>
128+
<span class="n">i</span> <span class="o">+=</span> <span class="mi">1</span>
129+
<span class="n">s</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="nb">dict</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="p">[</span><span class="s">&#39;one&#39;</span><span class="p">,</span><span class="s">&#39;two&#39;</span><span class="p">,</span><span class="s">&#39;three&#39;</span><span class="p">,</span><span class="s">&#39;four&#39;</span><span class="p">,</span><span class="s">&#39;five&#39;</span><span class="p">],</span> <span class="n">y</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">random_integers</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">100</span><span class="p">,</span><span class="mi">5</span><span class="p">)))</span>
130+
131+
<span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span> <span class="c">#wait one second before plotting again</span>
132+
133+
<span class="n">s</span><span class="o">.</span><span class="n">close</span><span class="p">()</span> <span class="c">#close the stream</span>
134+
</pre></div>
135+
136+
</div>
137+
</div>
138+
</div>
139+
140+
</div>
141+
<div class="cell border-box-sizing code_cell rendered">
142+
<div class="input">
143+
<div class="prompt input_prompt">In&nbsp;[3]:</div>
144+
<div class="inner_cell">
145+
<div class="input_area">
146+
<div class=" highlight hl-ipython2"><pre><span class="n">tls</span><span class="o">.</span><span class="n">embed</span><span class="p">(</span><span class="s">&#39;https://plot.ly/~kevintest/236/bar-chart-streaming/&#39;</span><span class="p">)</span>
147+
</pre></div>
148+
149+
</div>
150+
</div>
151+
</div>
152+
153+
<div class="output_wrapper">
154+
<div class="output">
155+
156+
157+
<div class="output_area"><div class="prompt output_prompt">Out[3]:</div>
158+
159+
<div class="output_html rendered_html output_subarea output_execute_result">
160+
<iframe id="igraph" scrolling="no" style="border:none;" seamless="seamless" src="https://plot.ly/~kevintest/236.embed" height="525" width="100%"></iframe>
161+
</div>
162+
163+
</div>
164+
165+
</div>
166+
</div>
167+
168+
</div>
169+
<div class="cell border-box-sizing text_cell rendered">
170+
<div class="prompt input_prompt">
171+
</div>
172+
<div class="inner_cell">
173+
<div class="text_cell_render border-box-sizing rendered_html">
174+
<div style="float:right; \">
175+
<img src="http://i.imgur.com/4vwuxdJ.png"
176+
align=right style="float:right; margin-left: 5px; margin-top: -10px" />
177+
</div>
178+
179+
<h4>Got Questions or Feedback? </h4>
180+
181+
<p>Reach us here at: <a href="https://community.plot.ly" target="_blank">Plotly Community</a></p>
182+
<p><h4> What's going on at Plotly? </h4>
183+
Check out our twitter:
184+
<a href="https://twitter.com/plotlygraphs" target="_blank">@plotlygraphs</a></p>
185+
186+
</div>
187+
</div>
188+
</div>{% endraw %}

0 commit comments

Comments
 (0)