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 "> ¶</ 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 [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 "> 'qoy4tt6x9w'</ 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 [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 "> 'one'</ span > < span class ="p "> ,</ span > < span class ="s "> 'two'</ span > < span class ="p "> ,</ span > < span class ="s "> 'three'</ span > < span class ="p "> ,</ span > < span class ="s "> 'four'</ span > < span class ="p "> ,</ span > < span class ="s "> 'five'</ 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 "> 'Bar Chart Streaming'</ 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 [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 "> 'bar_stream'</ 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'https://plot.ly/~kevintest/236'</ 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 [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 [ ]:</ 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 "> <</ 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 "> 'one'</ span > < span class ="p "> ,</ span > < span class ="s "> 'two'</ span > < span class ="p "> ,</ span > < span class ="s "> 'three'</ span > < span class ="p "> ,</ span > < span class ="s "> 'four'</ span > < span class ="p "> ,</ span > < span class ="s "> 'five'</ 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 [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 "> 'https://plot.ly/~kevintest/236/bar-chart-streaming/'</ 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