├── .gitignore
├── 0_TEST.ipynb
├── 1_Welcome.ipynb
├── 2_Intro_to_Python_and_SciPy.ipynb
├── 3_Basic_PyART.ipynb
├── 4a_PyART_IO_in_detail.ipynb
├── 4b_PyART_data_model.ipynb
├── 5_Simple_proccessing_and_adding_a_field.ipynb
├── 6_Texture_and_Dealiasing.ipynb
├── 7_Mapping_to_a_cartesian_grid.ipynb
├── 8a_artview_demo_ams37.ipynb
├── 8b_plot_current_nexrad_open_artview.ipynb
├── 9a_CSU_RadarTools_Demo-AMS_OSRSC.ipynb
├── 9b_PyTDA_Demo-AMS_OSRSC.ipynb
├── LICENSE
├── README.md
├── course_outline.rst
├── data
├── README.md
└── provision_data.sh
├── images
├── ams.jpg
├── arm_logo.png
├── freebeer.png
├── jupyter-logo.svg
├── matplotlib_logo.png
├── numpylogo.svg
├── python-logo.png
└── scipy.png
└── testme.py
/.gitignore:
--------------------------------------------------------------------------------
1 | .ipynb_checkpoints
2 | data/
3 | # ignore netCDF files created output by notebooks
4 | *.nc
5 |
--------------------------------------------------------------------------------
/0_TEST.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "metadata": {},
6 | "source": [
7 | "This notebook will test your system to check if Anaconda and Py-ART have been installed correctly. Select the cell below and execute by hitting shift+enter. If **Ready to go** is printed as the first line, everything is installed correctly. If **ISSUES** is printed or you get an error, something is mis-configured with your system, ask one of the instructors for help."
8 | ]
9 | },
10 | {
11 | "cell_type": "code",
12 | "execution_count": null,
13 | "metadata": {
14 | "collapsed": false
15 | },
16 | "outputs": [],
17 | "source": [
18 | "import pyart\n",
19 | "\n",
20 | "if pyart.__version__ == \"1.7.0\":\n",
21 | " if hasattr(pyart.graph, 'RadarMapDisplay'):\n",
22 | " print \"Ready to go\"\n",
23 | " else:\n",
24 | " print \"ISSUES\\n\\nMissing\\Broken Basemap\\n\"\n",
25 | " pyart._debug_info()\n",
26 | "else:\n",
27 | " print \"ISSUES\\n\\nWrong Py-ART version\\n\"\n",
28 | " pyart._debug_info()"
29 | ]
30 | }
31 | ],
32 | "metadata": {
33 | "kernelspec": {
34 | "display_name": "Python 3",
35 | "language": "python",
36 | "name": "python3"
37 | },
38 | "language_info": {
39 | "codemirror_mode": {
40 | "name": "ipython",
41 | "version": 3
42 | },
43 | "file_extension": ".py",
44 | "mimetype": "text/x-python",
45 | "name": "python",
46 | "nbconvert_exporter": "python",
47 | "pygments_lexer": "ipython3",
48 | "version": "3.5.2"
49 | }
50 | },
51 | "nbformat": 4,
52 | "nbformat_minor": 0
53 | }
54 |
--------------------------------------------------------------------------------
/1_Welcome.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "metadata": {
6 | "slideshow": {
7 | "slide_type": "slide"
8 | }
9 | },
10 | "source": [
11 | "# Welcome to the AMS Short Course on Open Source Radar Software"
12 | ]
13 | },
14 | {
15 | "cell_type": "markdown",
16 | "metadata": {
17 | "slideshow": {
18 | "slide_type": "notes"
19 | }
20 | },
21 | "source": [
22 | "Stuff"
23 | ]
24 | },
25 | {
26 | "cell_type": "markdown",
27 | "metadata": {
28 | "slideshow": {
29 | "slide_type": "fragment"
30 | }
31 | },
32 | "source": [
33 | "\n",
34 | "- Scott Collis, Argonne National Laboratory\n",
35 | "- Jonathan Helmus, Argonne National Laboratory\n",
36 | "- Nick Guy, University of Wyoming\n",
37 | "- Timothy Lang, NASA Marshall Space Flight Center \n",
38 | "- Joseph Hardin, Pacific Northwest National Laboratory\n",
39 | "- Marcus van Lier-Walqui, NASA Goddard Institute of Space Studies\n",
40 | "\n",
41 | "
\n",
42 | "

\n",
43 | "

\n",
44 | "
\n",
45 | "
\n"
46 | ]
47 | },
48 | {
49 | "cell_type": "markdown",
50 | "metadata": {
51 | "slideshow": {
52 | "slide_type": "slide"
53 | }
54 | },
55 | "source": [
56 | "#What Is Open Source?\n"
57 | ]
58 | },
59 | {
60 | "cell_type": "markdown",
61 | "metadata": {
62 | "slideshow": {
63 | "slide_type": "fragment"
64 | }
65 | },
66 | "source": [
67 | "###\"Free software is a matter of liberty, not price. To understand the concept, you should think of free as in free speech, not as in free beer.\"\n",
68 | " #####—Richard Stallman\n",
69 | "
\n",
70 | "######"
71 | ]
72 | },
73 | {
74 | "cell_type": "markdown",
75 | "metadata": {
76 | "slideshow": {
77 | "slide_type": "slide"
78 | }
79 | },
80 | "source": [
81 | "#Course Objectives "
82 | ]
83 | },
84 | {
85 | "cell_type": "markdown",
86 | "metadata": {
87 | "slideshow": {
88 | "slide_type": "fragment"
89 | }
90 | },
91 | "source": [
92 | "- To give a familiarity with Python and the Scientific Python ecosystem and IPython and project Jupyter"
93 | ]
94 | },
95 | {
96 | "cell_type": "markdown",
97 | "metadata": {
98 | "slideshow": {
99 | "slide_type": "fragment"
100 | }
101 | },
102 | "source": [
103 | "- To introduce the Python ARM Radar Toolkit and reveal the data model used"
104 | ]
105 | },
106 | {
107 | "cell_type": "markdown",
108 | "metadata": {
109 | "slideshow": {
110 | "slide_type": "fragment"
111 | }
112 | },
113 | "source": [
114 | "- To show how to plot a variety of different radar data with Py-ART"
115 | ]
116 | },
117 | {
118 | "cell_type": "markdown",
119 | "metadata": {
120 | "slideshow": {
121 | "slide_type": "fragment"
122 | }
123 | },
124 | "source": [
125 | "- Demonstrate how to add a field so you can do processing on your own data"
126 | ]
127 | },
128 | {
129 | "cell_type": "markdown",
130 | "metadata": {
131 | "slideshow": {
132 | "slide_type": "fragment"
133 | }
134 | },
135 | "source": [
136 | "- Introduce you to several tools in Py-ART including texture retrieval, dealiasing and gridding"
137 | ]
138 | },
139 | {
140 | "cell_type": "markdown",
141 | "metadata": {
142 | "slideshow": {
143 | "slide_type": "slide"
144 | }
145 | },
146 | "source": [
147 | "#Course objectives\n",
148 | "- Introduce you to ART-View"
149 | ]
150 | },
151 | {
152 | "cell_type": "markdown",
153 | "metadata": {
154 | "slideshow": {
155 | "slide_type": "fragment"
156 | }
157 | },
158 | "source": [
159 | "- Introduce you to an array of tools built on and independant of Py-ART for working with radar data"
160 | ]
161 | },
162 | {
163 | "cell_type": "markdown",
164 | "metadata": {
165 | "slideshow": {
166 | "slide_type": "slide"
167 | }
168 | },
169 | "source": [
170 | "8:30 a.m.\tARRIVAL AND INTRODUCTIONS AND INSTALLATION OF SOFTWARE AND DATA. Collis and Helmus\n",
171 | "
9:15 a.m.\tAN INTRODUCTION TO PYTHON AND IPYTHON Jonathan Helmus\t \n",
172 | "9:30 a.m.\tBASIC PY-ART AND THE PY-ART DATA MODEL Jonathan Helmus\n",
173 | "
10:00 a.m.\tCOFFEE BREAK "
174 | ]
175 | },
176 | {
177 | "cell_type": "markdown",
178 | "metadata": {
179 | "slideshow": {
180 | "slide_type": "fragment"
181 | }
182 | },
183 | "source": [
184 | "10:15 a.m.\tBASIC PY-ART AND THE PY-ART DATA MODEL (CONT) Jonathan Helmus\n",
185 | "
11:30 a.m.\tEXAMPLES OF RADAR PROCESSING USING PY-ART Scott Collis\n",
186 | "
12:00 a.m.\tLUNCH (included)"
187 | ]
188 | },
189 | {
190 | "cell_type": "markdown",
191 | "metadata": {
192 | "slideshow": {
193 | "slide_type": "slide"
194 | }
195 | },
196 | "source": [
197 | "1:30 p.m.\tEXAMPLES OF RADAR PROCESSING USING PY-ART (CONT) Scott Collis\n",
198 | "
2:00 p.m.\tPy-ART TOOLS, TEXTURE, DEALIAS AND GRID Scott Collis\n",
199 | "
2:30 p.m.\tPYTHON TOOLS 1: ART-VIEW Nick Guy.\n",
200 | "
3:00 p.m\tCOFFEE BREAK"
201 | ]
202 | },
203 | {
204 | "cell_type": "markdown",
205 | "metadata": {
206 | "slideshow": {
207 | "slide_type": "fragment"
208 | }
209 | },
210 | "source": [
211 | "3:30 p.m.\tPYTHON TOOLS 2: RADAR MET TOOLS. Tim Lang\n",
212 | "
4:15 p.m.\tWRAP UP AND FUTHER DISCUSSION. ALL\n",
213 | "
5:00 p.m.\tAdjourn. "
214 | ]
215 | },
216 | {
217 | "cell_type": "markdown",
218 | "metadata": {
219 | "collapsed": true,
220 | "slideshow": {
221 | "slide_type": "slide"
222 | }
223 | },
224 | "source": [
225 | "#This is a living course"
226 | ]
227 | },
228 | {
229 | "cell_type": "markdown",
230 | "metadata": {
231 | "collapsed": true,
232 | "slideshow": {
233 | "slide_type": "fragment"
234 | }
235 | },
236 | "source": [
237 | "- Data is at: This figshare repository\n"
238 | ]
239 | },
240 | {
241 | "cell_type": "markdown",
242 | "metadata": {
243 | "slideshow": {
244 | "slide_type": "fragment"
245 | }
246 | },
247 | "source": [
248 | "- Materials live This GitHub Repository"
249 | ]
250 | },
251 | {
252 | "cell_type": "code",
253 | "execution_count": null,
254 | "metadata": {
255 | "collapsed": true
256 | },
257 | "outputs": [],
258 | "source": []
259 | }
260 | ],
261 | "metadata": {
262 | "celltoolbar": "Slideshow",
263 | "kernelspec": {
264 | "display_name": "Python 2",
265 | "language": "python",
266 | "name": "python2"
267 | },
268 | "language_info": {
269 | "codemirror_mode": {
270 | "name": "ipython",
271 | "version": 2
272 | },
273 | "file_extension": ".py",
274 | "mimetype": "text/x-python",
275 | "name": "python",
276 | "nbconvert_exporter": "python",
277 | "pygments_lexer": "ipython2",
278 | "version": "2.7.10"
279 | }
280 | },
281 | "nbformat": 4,
282 | "nbformat_minor": 0
283 | }
284 |
--------------------------------------------------------------------------------
/2_Intro_to_Python_and_SciPy.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "metadata": {
6 | "slideshow": {
7 | "slide_type": "slide"
8 | }
9 | },
10 | "source": [
11 | "
\n",
12 | "\n",
13 | "### Python\n",
14 | "\n",
15 | "* General-purpose.\n",
16 | "* Interpreted.\n",
17 | "* Focuses on readability.\n",
18 | "* Excellent for interfacing with C, C++ and Fortran code. \n",
19 | "* Comprehesive standard library.\n",
20 | "* Extended with a large number of third-party packages.\n",
21 | "* Widely used in scientific programming."
22 | ]
23 | },
24 | {
25 | "cell_type": "markdown",
26 | "metadata": {
27 | "slideshow": {
28 | "slide_type": "notes"
29 | }
30 | },
31 | "source": [
32 | "This presentation will give a brief into to some key features of Python and the Scientific Python ecosystem to help those not familar with the language with the remainder of the class. This is in no way a comprehensive introduction to either topic. Excellent tutorials on Python and Scientific Python can be found online.\n",
33 | "\n",
34 | "We will be using IPython for this class which is a package which allows Python code to be run inside a browser. This is in no way the only way to run python, the Python/IPython shell, scripts and various IDEs can also be used but will not be coverted.\n",
35 | "\n",
36 | "The notebook for this materials is available if you wish to follow along on your own computer, but we will be moving fast..."
37 | ]
38 | },
39 | {
40 | "cell_type": "markdown",
41 | "metadata": {
42 | "slideshow": {
43 | "slide_type": "slide"
44 | }
45 | },
46 | "source": [
47 | "## Variables\n",
48 | "\n",
49 | "* ### Integers"
50 | ]
51 | },
52 | {
53 | "cell_type": "code",
54 | "execution_count": null,
55 | "metadata": {
56 | "collapsed": false,
57 | "slideshow": {
58 | "slide_type": "fragment"
59 | }
60 | },
61 | "outputs": [],
62 | "source": [
63 | "a = 1"
64 | ]
65 | },
66 | {
67 | "cell_type": "code",
68 | "execution_count": null,
69 | "metadata": {
70 | "collapsed": false,
71 | "slideshow": {
72 | "slide_type": "-"
73 | }
74 | },
75 | "outputs": [],
76 | "source": [
77 | "a + 1"
78 | ]
79 | },
80 | {
81 | "cell_type": "markdown",
82 | "metadata": {
83 | "slideshow": {
84 | "slide_type": "fragment"
85 | }
86 | },
87 | "source": [
88 | "* ### Floating point numbers"
89 | ]
90 | },
91 | {
92 | "cell_type": "code",
93 | "execution_count": null,
94 | "metadata": {
95 | "collapsed": false,
96 | "slideshow": {
97 | "slide_type": "fragment"
98 | }
99 | },
100 | "outputs": [],
101 | "source": [
102 | "b = 2.1"
103 | ]
104 | },
105 | {
106 | "cell_type": "code",
107 | "execution_count": null,
108 | "metadata": {
109 | "collapsed": false,
110 | "slideshow": {
111 | "slide_type": "-"
112 | }
113 | },
114 | "outputs": [],
115 | "source": [
116 | "b + 1"
117 | ]
118 | },
119 | {
120 | "cell_type": "code",
121 | "execution_count": null,
122 | "metadata": {
123 | "collapsed": false,
124 | "slideshow": {
125 | "slide_type": "-"
126 | }
127 | },
128 | "outputs": [],
129 | "source": [
130 | "a + b"
131 | ]
132 | },
133 | {
134 | "cell_type": "code",
135 | "execution_count": null,
136 | "metadata": {
137 | "collapsed": false,
138 | "slideshow": {
139 | "slide_type": "-"
140 | }
141 | },
142 | "outputs": [],
143 | "source": [
144 | "type(a + b)"
145 | ]
146 | },
147 | {
148 | "cell_type": "markdown",
149 | "metadata": {
150 | "slideshow": {
151 | "slide_type": "slide"
152 | }
153 | },
154 | "source": [
155 | "## Variables\n",
156 | "\n",
157 | "* ### Complex numbers"
158 | ]
159 | },
160 | {
161 | "cell_type": "code",
162 | "execution_count": null,
163 | "metadata": {
164 | "collapsed": true,
165 | "slideshow": {
166 | "slide_type": "fragment"
167 | }
168 | },
169 | "outputs": [],
170 | "source": [
171 | "c = 1.5 + 0.5j # complex numbers"
172 | ]
173 | },
174 | {
175 | "cell_type": "code",
176 | "execution_count": null,
177 | "metadata": {
178 | "collapsed": false,
179 | "slideshow": {
180 | "slide_type": "-"
181 | }
182 | },
183 | "outputs": [],
184 | "source": [
185 | "print c.real\n",
186 | "print c.imag"
187 | ]
188 | },
189 | {
190 | "cell_type": "markdown",
191 | "metadata": {
192 | "slideshow": {
193 | "slide_type": "fragment"
194 | }
195 | },
196 | "source": [
197 | " * ### Booleans"
198 | ]
199 | },
200 | {
201 | "cell_type": "code",
202 | "execution_count": null,
203 | "metadata": {
204 | "collapsed": true,
205 | "slideshow": {
206 | "slide_type": "fragment"
207 | }
208 | },
209 | "outputs": [],
210 | "source": [
211 | "d = 3 > 4 "
212 | ]
213 | },
214 | {
215 | "cell_type": "code",
216 | "execution_count": null,
217 | "metadata": {
218 | "collapsed": false,
219 | "slideshow": {
220 | "slide_type": "-"
221 | }
222 | },
223 | "outputs": [],
224 | "source": [
225 | "print d"
226 | ]
227 | },
228 | {
229 | "cell_type": "code",
230 | "execution_count": null,
231 | "metadata": {
232 | "collapsed": false,
233 | "slideshow": {
234 | "slide_type": "-"
235 | }
236 | },
237 | "outputs": [],
238 | "source": [
239 | "type(d)"
240 | ]
241 | },
242 | {
243 | "cell_type": "markdown",
244 | "metadata": {
245 | "slideshow": {
246 | "slide_type": "slide"
247 | }
248 | },
249 | "source": [
250 | "## Variables\n",
251 | "\n",
252 | "* ### Strings"
253 | ]
254 | },
255 | {
256 | "cell_type": "code",
257 | "execution_count": null,
258 | "metadata": {
259 | "collapsed": false,
260 | "slideshow": {
261 | "slide_type": "fragment"
262 | }
263 | },
264 | "outputs": [],
265 | "source": [
266 | "s = \"Hello everyone\"\n",
267 | "type(s)"
268 | ]
269 | },
270 | {
271 | "cell_type": "code",
272 | "execution_count": null,
273 | "metadata": {
274 | "collapsed": false,
275 | "slideshow": {
276 | "slide_type": "fragment"
277 | }
278 | },
279 | "outputs": [],
280 | "source": [
281 | "a = \"Hello \" \n",
282 | "b = \"World\"\n",
283 | "print a + b"
284 | ]
285 | },
286 | {
287 | "cell_type": "markdown",
288 | "metadata": {
289 | "slideshow": {
290 | "slide_type": "slide"
291 | }
292 | },
293 | "source": [
294 | "## Variables can be cast from one type to another"
295 | ]
296 | },
297 | {
298 | "cell_type": "code",
299 | "execution_count": null,
300 | "metadata": {
301 | "collapsed": false,
302 | "slideshow": {
303 | "slide_type": "fragment"
304 | }
305 | },
306 | "outputs": [],
307 | "source": [
308 | "a = 1\n",
309 | "print a\n",
310 | "print type(a)"
311 | ]
312 | },
313 | {
314 | "cell_type": "code",
315 | "execution_count": null,
316 | "metadata": {
317 | "collapsed": false,
318 | "slideshow": {
319 | "slide_type": "-"
320 | }
321 | },
322 | "outputs": [],
323 | "source": [
324 | "b = float(a)\n",
325 | "print b\n",
326 | "print type(b)"
327 | ]
328 | },
329 | {
330 | "cell_type": "code",
331 | "execution_count": null,
332 | "metadata": {
333 | "collapsed": false,
334 | "slideshow": {
335 | "slide_type": "fragment"
336 | }
337 | },
338 | "outputs": [],
339 | "source": [
340 | "s = \"1.23\"\n",
341 | "print s\n",
342 | "print type(s)"
343 | ]
344 | },
345 | {
346 | "cell_type": "code",
347 | "execution_count": null,
348 | "metadata": {
349 | "collapsed": false,
350 | "slideshow": {
351 | "slide_type": "-"
352 | }
353 | },
354 | "outputs": [],
355 | "source": [
356 | "f = float(s)\n",
357 | "print f\n",
358 | "print type(f)"
359 | ]
360 | },
361 | {
362 | "cell_type": "markdown",
363 | "metadata": {
364 | "slideshow": {
365 | "slide_type": "slide"
366 | }
367 | },
368 | "source": [
369 | "## Containers"
370 | ]
371 | },
372 | {
373 | "cell_type": "markdown",
374 | "metadata": {
375 | "slideshow": {
376 | "slide_type": "-"
377 | }
378 | },
379 | "source": [
380 | "* ### Lists"
381 | ]
382 | },
383 | {
384 | "cell_type": "code",
385 | "execution_count": null,
386 | "metadata": {
387 | "collapsed": false,
388 | "slideshow": {
389 | "slide_type": "fragment"
390 | }
391 | },
392 | "outputs": [],
393 | "source": [
394 | "l = ['red', 'blue', 'green', 'black', 'white']"
395 | ]
396 | },
397 | {
398 | "cell_type": "code",
399 | "execution_count": null,
400 | "metadata": {
401 | "collapsed": false,
402 | "slideshow": {
403 | "slide_type": "fragment"
404 | }
405 | },
406 | "outputs": [],
407 | "source": [
408 | "len(l)"
409 | ]
410 | },
411 | {
412 | "cell_type": "markdown",
413 | "metadata": {
414 | "slideshow": {
415 | "slide_type": "slide"
416 | }
417 | },
418 | "source": [
419 | "### Indexing"
420 | ]
421 | },
422 | {
423 | "cell_type": "code",
424 | "execution_count": null,
425 | "metadata": {
426 | "collapsed": false,
427 | "slideshow": {
428 | "slide_type": "fragment"
429 | }
430 | },
431 | "outputs": [],
432 | "source": [
433 | "l"
434 | ]
435 | },
436 | {
437 | "cell_type": "code",
438 | "execution_count": null,
439 | "metadata": {
440 | "collapsed": false,
441 | "slideshow": {
442 | "slide_type": "fragment"
443 | }
444 | },
445 | "outputs": [],
446 | "source": [
447 | "print l[0]\n",
448 | "print l[1]\n",
449 | "print l[2]"
450 | ]
451 | },
452 | {
453 | "cell_type": "code",
454 | "execution_count": null,
455 | "metadata": {
456 | "collapsed": false,
457 | "slideshow": {
458 | "slide_type": "fragment"
459 | }
460 | },
461 | "outputs": [],
462 | "source": [
463 | "print l[-1] # last element\n",
464 | "print l[-2]"
465 | ]
466 | },
467 | {
468 | "cell_type": "code",
469 | "execution_count": null,
470 | "metadata": {
471 | "collapsed": false,
472 | "slideshow": {
473 | "slide_type": "fragment"
474 | }
475 | },
476 | "outputs": [],
477 | "source": [
478 | "l[0] = 'orange'\n",
479 | "print l"
480 | ]
481 | },
482 | {
483 | "cell_type": "markdown",
484 | "metadata": {
485 | "slideshow": {
486 | "slide_type": "slide"
487 | }
488 | },
489 | "source": [
490 | "### Slicing"
491 | ]
492 | },
493 | {
494 | "cell_type": "code",
495 | "execution_count": null,
496 | "metadata": {
497 | "collapsed": false,
498 | "slideshow": {
499 | "slide_type": "fragment"
500 | }
501 | },
502 | "outputs": [],
503 | "source": [
504 | "print l[2:5]"
505 | ]
506 | },
507 | {
508 | "cell_type": "code",
509 | "execution_count": null,
510 | "metadata": {
511 | "collapsed": false,
512 | "slideshow": {
513 | "slide_type": "fragment"
514 | }
515 | },
516 | "outputs": [],
517 | "source": [
518 | "print l[2:-1]"
519 | ]
520 | },
521 | {
522 | "cell_type": "code",
523 | "execution_count": null,
524 | "metadata": {
525 | "collapsed": false,
526 | "slideshow": {
527 | "slide_type": "fragment"
528 | }
529 | },
530 | "outputs": [],
531 | "source": [
532 | "print l[1:6:2]"
533 | ]
534 | },
535 | {
536 | "cell_type": "code",
537 | "execution_count": null,
538 | "metadata": {
539 | "collapsed": false,
540 | "slideshow": {
541 | "slide_type": "fragment"
542 | }
543 | },
544 | "outputs": [],
545 | "source": [
546 | "l[::-1]"
547 | ]
548 | },
549 | {
550 | "cell_type": "markdown",
551 | "metadata": {
552 | "slideshow": {
553 | "slide_type": "slide"
554 | }
555 | },
556 | "source": [
557 | "### Lists can store different type of variable in each element"
558 | ]
559 | },
560 | {
561 | "cell_type": "code",
562 | "execution_count": null,
563 | "metadata": {
564 | "collapsed": false,
565 | "slideshow": {
566 | "slide_type": "fragment"
567 | }
568 | },
569 | "outputs": [],
570 | "source": [
571 | "ll = [5, 22.9, 14.8+1j, 'hello', [1,2,3]]"
572 | ]
573 | },
574 | {
575 | "cell_type": "code",
576 | "execution_count": null,
577 | "metadata": {
578 | "collapsed": false,
579 | "slideshow": {
580 | "slide_type": "fragment"
581 | }
582 | },
583 | "outputs": [],
584 | "source": [
585 | "ll"
586 | ]
587 | },
588 | {
589 | "cell_type": "code",
590 | "execution_count": null,
591 | "metadata": {
592 | "collapsed": false,
593 | "slideshow": {
594 | "slide_type": "fragment"
595 | }
596 | },
597 | "outputs": [],
598 | "source": [
599 | "print ll[0]\n",
600 | "print ll[1]\n",
601 | "print ll[2]\n",
602 | "print ll[3]\n",
603 | "print ll[4]"
604 | ]
605 | },
606 | {
607 | "cell_type": "markdown",
608 | "metadata": {
609 | "slideshow": {
610 | "slide_type": "slide"
611 | }
612 | },
613 | "source": [
614 | "## Containers\n",
615 | "\n",
616 | "* ### Dictionaries"
617 | ]
618 | },
619 | {
620 | "cell_type": "code",
621 | "execution_count": null,
622 | "metadata": {
623 | "collapsed": false,
624 | "slideshow": {
625 | "slide_type": "fragment"
626 | }
627 | },
628 | "outputs": [],
629 | "source": [
630 | "d = {'name': 'Jonathan', 'id': 223984, 'location': 'USA'}"
631 | ]
632 | },
633 | {
634 | "cell_type": "code",
635 | "execution_count": null,
636 | "metadata": {
637 | "collapsed": false,
638 | "slideshow": {
639 | "slide_type": "fragment"
640 | }
641 | },
642 | "outputs": [],
643 | "source": [
644 | "d.keys()"
645 | ]
646 | },
647 | {
648 | "cell_type": "code",
649 | "execution_count": null,
650 | "metadata": {
651 | "collapsed": false,
652 | "slideshow": {
653 | "slide_type": "fragment"
654 | }
655 | },
656 | "outputs": [],
657 | "source": [
658 | "d.values()"
659 | ]
660 | },
661 | {
662 | "cell_type": "code",
663 | "execution_count": null,
664 | "metadata": {
665 | "collapsed": false,
666 | "slideshow": {
667 | "slide_type": "fragment"
668 | }
669 | },
670 | "outputs": [],
671 | "source": [
672 | "d['name']"
673 | ]
674 | },
675 | {
676 | "cell_type": "code",
677 | "execution_count": null,
678 | "metadata": {
679 | "collapsed": false,
680 | "slideshow": {
681 | "slide_type": "fragment"
682 | }
683 | },
684 | "outputs": [],
685 | "source": [
686 | "d['id']"
687 | ]
688 | },
689 | {
690 | "cell_type": "code",
691 | "execution_count": null,
692 | "metadata": {
693 | "collapsed": false,
694 | "slideshow": {
695 | "slide_type": "fragment"
696 | }
697 | },
698 | "outputs": [],
699 | "source": [
700 | "d['id'] = 1234"
701 | ]
702 | },
703 | {
704 | "cell_type": "code",
705 | "execution_count": null,
706 | "metadata": {
707 | "collapsed": false,
708 | "slideshow": {
709 | "slide_type": "fragment"
710 | }
711 | },
712 | "outputs": [],
713 | "source": [
714 | "d['id']"
715 | ]
716 | },
717 | {
718 | "cell_type": "markdown",
719 | "metadata": {
720 | "slideshow": {
721 | "slide_type": "slide"
722 | }
723 | },
724 | "source": [
725 | "## Containers\n",
726 | "\n",
727 | "* ### Tuples"
728 | ]
729 | },
730 | {
731 | "cell_type": "code",
732 | "execution_count": null,
733 | "metadata": {
734 | "collapsed": false,
735 | "slideshow": {
736 | "slide_type": "fragment"
737 | }
738 | },
739 | "outputs": [],
740 | "source": [
741 | "t = ('red', 'blue', 'green')"
742 | ]
743 | },
744 | {
745 | "cell_type": "code",
746 | "execution_count": null,
747 | "metadata": {
748 | "collapsed": false,
749 | "slideshow": {
750 | "slide_type": "fragment"
751 | }
752 | },
753 | "outputs": [],
754 | "source": [
755 | "t[0]"
756 | ]
757 | },
758 | {
759 | "cell_type": "code",
760 | "execution_count": null,
761 | "metadata": {
762 | "collapsed": false,
763 | "slideshow": {
764 | "slide_type": "fragment"
765 | }
766 | },
767 | "outputs": [],
768 | "source": [
769 | "t[1:3]"
770 | ]
771 | },
772 | {
773 | "cell_type": "code",
774 | "execution_count": null,
775 | "metadata": {
776 | "collapsed": false,
777 | "slideshow": {
778 | "slide_type": "fragment"
779 | }
780 | },
781 | "outputs": [],
782 | "source": [
783 | "t[1] = 'orange'"
784 | ]
785 | },
786 | {
787 | "cell_type": "markdown",
788 | "metadata": {
789 | "slideshow": {
790 | "slide_type": "slide"
791 | }
792 | },
793 | "source": [
794 | "## Flow control\n",
795 | "\n",
796 | "* ### conditional (if, else, elif)"
797 | ]
798 | },
799 | {
800 | "cell_type": "code",
801 | "execution_count": null,
802 | "metadata": {
803 | "collapsed": false,
804 | "slideshow": {
805 | "slide_type": "fragment"
806 | }
807 | },
808 | "outputs": [],
809 | "source": [
810 | "a = 10\n",
811 | "if a == 10:\n",
812 | " print \"a is 10\""
813 | ]
814 | },
815 | {
816 | "cell_type": "code",
817 | "execution_count": null,
818 | "metadata": {
819 | "collapsed": false,
820 | "slideshow": {
821 | "slide_type": "fragment"
822 | }
823 | },
824 | "outputs": [],
825 | "source": [
826 | "a = 10\n",
827 | "if a > 10:\n",
828 | " print \"a is larger than 10\"\n",
829 | "else:\n",
830 | " print \"a is less than 10... or maybe equal too\""
831 | ]
832 | },
833 | {
834 | "cell_type": "code",
835 | "execution_count": null,
836 | "metadata": {
837 | "collapsed": false,
838 | "slideshow": {
839 | "slide_type": "fragment"
840 | }
841 | },
842 | "outputs": [],
843 | "source": [
844 | "a = 4\n",
845 | "if a > 10:\n",
846 | " print \"a is larger than 10\"\n",
847 | "elif a < 10:\n",
848 | " print \"a is less than 10\"\n",
849 | "else:\n",
850 | " print \"a is equal to 10\""
851 | ]
852 | },
853 | {
854 | "cell_type": "markdown",
855 | "metadata": {
856 | "slideshow": {
857 | "slide_type": "slide"
858 | }
859 | },
860 | "source": [
861 | "## Flow control\n",
862 | "\n",
863 | "* ### Loops"
864 | ]
865 | },
866 | {
867 | "cell_type": "code",
868 | "execution_count": null,
869 | "metadata": {
870 | "collapsed": false,
871 | "slideshow": {
872 | "slide_type": "fragment"
873 | }
874 | },
875 | "outputs": [],
876 | "source": [
877 | "for i in range(10):\n",
878 | " print i"
879 | ]
880 | },
881 | {
882 | "cell_type": "code",
883 | "execution_count": null,
884 | "metadata": {
885 | "collapsed": false,
886 | "slideshow": {
887 | "slide_type": "fragment"
888 | }
889 | },
890 | "outputs": [],
891 | "source": [
892 | "for color in ['red', 'blue', 'orange']:\n",
893 | " print \"My favorite color is\", color"
894 | ]
895 | },
896 | {
897 | "cell_type": "markdown",
898 | "metadata": {
899 | "slideshow": {
900 | "slide_type": "slide"
901 | }
902 | },
903 | "source": [
904 | "## Functions"
905 | ]
906 | },
907 | {
908 | "cell_type": "code",
909 | "execution_count": null,
910 | "metadata": {
911 | "collapsed": false,
912 | "slideshow": {
913 | "slide_type": "fragment"
914 | }
915 | },
916 | "outputs": [],
917 | "source": [
918 | "def func():\n",
919 | " print \"Hello world\""
920 | ]
921 | },
922 | {
923 | "cell_type": "code",
924 | "execution_count": null,
925 | "metadata": {
926 | "collapsed": false,
927 | "slideshow": {
928 | "slide_type": "-"
929 | }
930 | },
931 | "outputs": [],
932 | "source": [
933 | "func()"
934 | ]
935 | },
936 | {
937 | "cell_type": "code",
938 | "execution_count": null,
939 | "metadata": {
940 | "collapsed": false,
941 | "slideshow": {
942 | "slide_type": "fragment"
943 | }
944 | },
945 | "outputs": [],
946 | "source": [
947 | "def func2(name):\n",
948 | " print \"Hello\", name"
949 | ]
950 | },
951 | {
952 | "cell_type": "code",
953 | "execution_count": null,
954 | "metadata": {
955 | "collapsed": false,
956 | "slideshow": {
957 | "slide_type": "-"
958 | }
959 | },
960 | "outputs": [],
961 | "source": [
962 | "func2(\"Jonathan\")"
963 | ]
964 | },
965 | {
966 | "cell_type": "code",
967 | "execution_count": null,
968 | "metadata": {
969 | "collapsed": false,
970 | "slideshow": {
971 | "slide_type": "fragment"
972 | }
973 | },
974 | "outputs": [],
975 | "source": [
976 | "def times2(x):\n",
977 | " return x * 2"
978 | ]
979 | },
980 | {
981 | "cell_type": "code",
982 | "execution_count": null,
983 | "metadata": {
984 | "collapsed": false,
985 | "slideshow": {
986 | "slide_type": "fragment"
987 | }
988 | },
989 | "outputs": [],
990 | "source": [
991 | "y = times2(2)\n",
992 | "print y"
993 | ]
994 | },
995 | {
996 | "cell_type": "code",
997 | "execution_count": null,
998 | "metadata": {
999 | "collapsed": false,
1000 | "slideshow": {
1001 | "slide_type": "slide"
1002 | }
1003 | },
1004 | "outputs": [],
1005 | "source": [
1006 | "def times_something(x, y=2):\n",
1007 | " print x*y"
1008 | ]
1009 | },
1010 | {
1011 | "cell_type": "code",
1012 | "execution_count": null,
1013 | "metadata": {
1014 | "collapsed": false,
1015 | "slideshow": {
1016 | "slide_type": "-"
1017 | }
1018 | },
1019 | "outputs": [],
1020 | "source": [
1021 | "times_something(3)"
1022 | ]
1023 | },
1024 | {
1025 | "cell_type": "code",
1026 | "execution_count": null,
1027 | "metadata": {
1028 | "collapsed": false,
1029 | "slideshow": {
1030 | "slide_type": "-"
1031 | }
1032 | },
1033 | "outputs": [],
1034 | "source": [
1035 | "times_something(3, 3)"
1036 | ]
1037 | },
1038 | {
1039 | "cell_type": "markdown",
1040 | "metadata": {
1041 | "slideshow": {
1042 | "slide_type": "slide"
1043 | }
1044 | },
1045 | "source": [
1046 | "## Classes"
1047 | ]
1048 | },
1049 | {
1050 | "cell_type": "code",
1051 | "execution_count": null,
1052 | "metadata": {
1053 | "collapsed": false,
1054 | "slideshow": {
1055 | "slide_type": "fragment"
1056 | }
1057 | },
1058 | "outputs": [],
1059 | "source": [
1060 | "class Car(object):\n",
1061 | " \n",
1062 | " engine = 'V4' # class attribute\n",
1063 | " \n",
1064 | " def start(self): # class method\n",
1065 | " print \"Starting the car with a\", self.engine, \"engine\""
1066 | ]
1067 | },
1068 | {
1069 | "cell_type": "code",
1070 | "execution_count": null,
1071 | "metadata": {
1072 | "collapsed": false,
1073 | "slideshow": {
1074 | "slide_type": "-"
1075 | }
1076 | },
1077 | "outputs": [],
1078 | "source": [
1079 | "mycar = Car()"
1080 | ]
1081 | },
1082 | {
1083 | "cell_type": "code",
1084 | "execution_count": null,
1085 | "metadata": {
1086 | "collapsed": false,
1087 | "slideshow": {
1088 | "slide_type": "-"
1089 | }
1090 | },
1091 | "outputs": [],
1092 | "source": [
1093 | "type(mycar)"
1094 | ]
1095 | },
1096 | {
1097 | "cell_type": "code",
1098 | "execution_count": null,
1099 | "metadata": {
1100 | "collapsed": false,
1101 | "slideshow": {
1102 | "slide_type": "-"
1103 | }
1104 | },
1105 | "outputs": [],
1106 | "source": [
1107 | "mycar.engine"
1108 | ]
1109 | },
1110 | {
1111 | "cell_type": "code",
1112 | "execution_count": null,
1113 | "metadata": {
1114 | "collapsed": false,
1115 | "slideshow": {
1116 | "slide_type": "-"
1117 | }
1118 | },
1119 | "outputs": [],
1120 | "source": [
1121 | "mycar.start()"
1122 | ]
1123 | },
1124 | {
1125 | "cell_type": "code",
1126 | "execution_count": null,
1127 | "metadata": {
1128 | "collapsed": false,
1129 | "slideshow": {
1130 | "slide_type": "fragment"
1131 | }
1132 | },
1133 | "outputs": [],
1134 | "source": [
1135 | "mycar.engine = 'V6'"
1136 | ]
1137 | },
1138 | {
1139 | "cell_type": "code",
1140 | "execution_count": null,
1141 | "metadata": {
1142 | "collapsed": false,
1143 | "slideshow": {
1144 | "slide_type": "-"
1145 | }
1146 | },
1147 | "outputs": [],
1148 | "source": [
1149 | "mycar.engine"
1150 | ]
1151 | },
1152 | {
1153 | "cell_type": "code",
1154 | "execution_count": null,
1155 | "metadata": {
1156 | "collapsed": false,
1157 | "slideshow": {
1158 | "slide_type": "-"
1159 | }
1160 | },
1161 | "outputs": [],
1162 | "source": [
1163 | "mycar.start()"
1164 | ]
1165 | },
1166 | {
1167 | "cell_type": "markdown",
1168 | "metadata": {
1169 | "slideshow": {
1170 | "slide_type": "slide"
1171 | }
1172 | },
1173 | "source": [
1174 | "## The Scientific Python ecosystem \n",
1175 | "\n",
1176 | "* ### NumPy\n",
1177 | "\n",
1178 | ""
1179 | ]
1180 | },
1181 | {
1182 | "cell_type": "code",
1183 | "execution_count": null,
1184 | "metadata": {
1185 | "collapsed": false,
1186 | "slideshow": {
1187 | "slide_type": "slide"
1188 | }
1189 | },
1190 | "outputs": [],
1191 | "source": [
1192 | "import numpy as np"
1193 | ]
1194 | },
1195 | {
1196 | "cell_type": "code",
1197 | "execution_count": null,
1198 | "metadata": {
1199 | "collapsed": false,
1200 | "slideshow": {
1201 | "slide_type": "fragment"
1202 | }
1203 | },
1204 | "outputs": [],
1205 | "source": [
1206 | "a = np.array([0, 1, 2, 3, 4, 5, 6, 7])"
1207 | ]
1208 | },
1209 | {
1210 | "cell_type": "code",
1211 | "execution_count": null,
1212 | "metadata": {
1213 | "collapsed": false,
1214 | "slideshow": {
1215 | "slide_type": "-"
1216 | }
1217 | },
1218 | "outputs": [],
1219 | "source": [
1220 | "a"
1221 | ]
1222 | },
1223 | {
1224 | "cell_type": "code",
1225 | "execution_count": null,
1226 | "metadata": {
1227 | "collapsed": false,
1228 | "slideshow": {
1229 | "slide_type": "-"
1230 | }
1231 | },
1232 | "outputs": [],
1233 | "source": [
1234 | "a.shape"
1235 | ]
1236 | },
1237 | {
1238 | "cell_type": "code",
1239 | "execution_count": null,
1240 | "metadata": {
1241 | "collapsed": false,
1242 | "slideshow": {
1243 | "slide_type": "-"
1244 | }
1245 | },
1246 | "outputs": [],
1247 | "source": [
1248 | "a.ndim"
1249 | ]
1250 | },
1251 | {
1252 | "cell_type": "code",
1253 | "execution_count": null,
1254 | "metadata": {
1255 | "collapsed": false,
1256 | "slideshow": {
1257 | "slide_type": "-"
1258 | }
1259 | },
1260 | "outputs": [],
1261 | "source": [
1262 | "a.dtype"
1263 | ]
1264 | },
1265 | {
1266 | "cell_type": "code",
1267 | "execution_count": null,
1268 | "metadata": {
1269 | "collapsed": false,
1270 | "slideshow": {
1271 | "slide_type": "slide"
1272 | }
1273 | },
1274 | "outputs": [],
1275 | "source": [
1276 | "a[0::2]"
1277 | ]
1278 | },
1279 | {
1280 | "cell_type": "code",
1281 | "execution_count": null,
1282 | "metadata": {
1283 | "collapsed": false,
1284 | "slideshow": {
1285 | "slide_type": "-"
1286 | }
1287 | },
1288 | "outputs": [],
1289 | "source": [
1290 | "a[a>3]"
1291 | ]
1292 | },
1293 | {
1294 | "cell_type": "code",
1295 | "execution_count": null,
1296 | "metadata": {
1297 | "collapsed": false,
1298 | "slideshow": {
1299 | "slide_type": "-"
1300 | }
1301 | },
1302 | "outputs": [],
1303 | "source": [
1304 | "a * 2 + 100"
1305 | ]
1306 | },
1307 | {
1308 | "cell_type": "code",
1309 | "execution_count": null,
1310 | "metadata": {
1311 | "collapsed": false,
1312 | "slideshow": {
1313 | "slide_type": "-"
1314 | }
1315 | },
1316 | "outputs": [],
1317 | "source": [
1318 | "a.mean()"
1319 | ]
1320 | },
1321 | {
1322 | "cell_type": "markdown",
1323 | "metadata": {
1324 | "slideshow": {
1325 | "slide_type": "slide"
1326 | }
1327 | },
1328 | "source": [
1329 | "### Arrays can be multi-dimensional"
1330 | ]
1331 | },
1332 | {
1333 | "cell_type": "code",
1334 | "execution_count": null,
1335 | "metadata": {
1336 | "collapsed": false,
1337 | "slideshow": {
1338 | "slide_type": "fragment"
1339 | }
1340 | },
1341 | "outputs": [],
1342 | "source": [
1343 | "b = np.arange(12).reshape(3,4)"
1344 | ]
1345 | },
1346 | {
1347 | "cell_type": "code",
1348 | "execution_count": null,
1349 | "metadata": {
1350 | "collapsed": false,
1351 | "slideshow": {
1352 | "slide_type": "-"
1353 | }
1354 | },
1355 | "outputs": [],
1356 | "source": [
1357 | "b.shape"
1358 | ]
1359 | },
1360 | {
1361 | "cell_type": "code",
1362 | "execution_count": null,
1363 | "metadata": {
1364 | "collapsed": false,
1365 | "slideshow": {
1366 | "slide_type": "-"
1367 | }
1368 | },
1369 | "outputs": [],
1370 | "source": [
1371 | "b"
1372 | ]
1373 | },
1374 | {
1375 | "cell_type": "code",
1376 | "execution_count": null,
1377 | "metadata": {
1378 | "collapsed": false,
1379 | "slideshow": {
1380 | "slide_type": "-"
1381 | }
1382 | },
1383 | "outputs": [],
1384 | "source": [
1385 | "b[1,2]"
1386 | ]
1387 | },
1388 | {
1389 | "cell_type": "code",
1390 | "execution_count": null,
1391 | "metadata": {
1392 | "collapsed": false,
1393 | "slideshow": {
1394 | "slide_type": "-"
1395 | }
1396 | },
1397 | "outputs": [],
1398 | "source": [
1399 | "b[0:2, ::-1]"
1400 | ]
1401 | },
1402 | {
1403 | "cell_type": "markdown",
1404 | "metadata": {
1405 | "slideshow": {
1406 | "slide_type": "slide"
1407 | }
1408 | },
1409 | "source": [
1410 | "## The Scientific Python ecosystem \n",
1411 | "\n",
1412 | "* ### SciPy\n",
1413 | "\n",
1414 | ""
1415 | ]
1416 | },
1417 | {
1418 | "cell_type": "code",
1419 | "execution_count": null,
1420 | "metadata": {
1421 | "collapsed": true,
1422 | "slideshow": {
1423 | "slide_type": "slide"
1424 | }
1425 | },
1426 | "outputs": [],
1427 | "source": [
1428 | "import scipy"
1429 | ]
1430 | },
1431 | {
1432 | "cell_type": "code",
1433 | "execution_count": null,
1434 | "metadata": {
1435 | "collapsed": false,
1436 | "slideshow": {
1437 | "slide_type": "-"
1438 | }
1439 | },
1440 | "outputs": [],
1441 | "source": [
1442 | "print scipy.__doc__"
1443 | ]
1444 | },
1445 | {
1446 | "cell_type": "markdown",
1447 | "metadata": {
1448 | "slideshow": {
1449 | "slide_type": "slide"
1450 | }
1451 | },
1452 | "source": [
1453 | "## The Scientific Python ecosystem \n",
1454 | "\n",
1455 | "* ### matplotlib\n",
1456 | "\n",
1457 | ""
1458 | ]
1459 | },
1460 | {
1461 | "cell_type": "code",
1462 | "execution_count": null,
1463 | "metadata": {
1464 | "collapsed": false,
1465 | "slideshow": {
1466 | "slide_type": "slide"
1467 | }
1468 | },
1469 | "outputs": [],
1470 | "source": [
1471 | "%pylab inline"
1472 | ]
1473 | },
1474 | {
1475 | "cell_type": "code",
1476 | "execution_count": null,
1477 | "metadata": {
1478 | "collapsed": false,
1479 | "slideshow": {
1480 | "slide_type": "-"
1481 | }
1482 | },
1483 | "outputs": [],
1484 | "source": [
1485 | "plot([1,2,3])"
1486 | ]
1487 | },
1488 | {
1489 | "cell_type": "code",
1490 | "execution_count": null,
1491 | "metadata": {
1492 | "collapsed": false,
1493 | "slideshow": {
1494 | "slide_type": "slide"
1495 | }
1496 | },
1497 | "outputs": [],
1498 | "source": [
1499 | "a = np.random.rand(30, 30)\n",
1500 | "imshow(a)\n",
1501 | "colorbar()"
1502 | ]
1503 | }
1504 | ],
1505 | "metadata": {
1506 | "celltoolbar": "Slideshow",
1507 | "kernelspec": {
1508 | "display_name": "Python 2",
1509 | "language": "python",
1510 | "name": "python2"
1511 | },
1512 | "language_info": {
1513 | "codemirror_mode": {
1514 | "name": "ipython",
1515 | "version": 2
1516 | },
1517 | "file_extension": ".py",
1518 | "mimetype": "text/x-python",
1519 | "name": "python",
1520 | "nbconvert_exporter": "python",
1521 | "pygments_lexer": "ipython2",
1522 | "version": "2.7.10"
1523 | }
1524 | },
1525 | "nbformat": 4,
1526 | "nbformat_minor": 0
1527 | }
1528 |
--------------------------------------------------------------------------------
/8b_plot_current_nexrad_open_artview.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "metadata": {},
6 | "source": [
7 | "Import needed libraries"
8 | ]
9 | },
10 | {
11 | "cell_type": "code",
12 | "execution_count": 3,
13 | "metadata": {
14 | "collapsed": false
15 | },
16 | "outputs": [
17 | {
18 | "name": "stderr",
19 | "output_type": "stream",
20 | "text": [
21 | "/Users/guy/anaconda/lib/python2.7/site-packages/matplotlib/__init__.py:1318: UserWarning: This call to matplotlib.use() has no effect\n",
22 | "because the backend has already been chosen;\n",
23 | "matplotlib.use() must be called *before* pylab, matplotlib.pyplot,\n",
24 | "or matplotlib.backends is imported for the first time.\n",
25 | "\n",
26 | " warnings.warn(_use_error_msg)\n"
27 | ]
28 | }
29 | ],
30 | "source": [
31 | "import os\n",
32 | "import urllib2\n",
33 | "import pyart\n",
34 | "#import numpy as np\n",
35 | "import matplotlib.pyplot as plt\n",
36 | "import artview\n",
37 | "\n",
38 | "%matplotlib inline"
39 | ]
40 | },
41 | {
42 | "cell_type": "markdown",
43 | "metadata": {},
44 | "source": [
45 | "Create a class for accessing and plotting latest radar image"
46 | ]
47 | },
48 | {
49 | "cell_type": "code",
50 | "execution_count": 4,
51 | "metadata": {
52 | "collapsed": true
53 | },
54 | "outputs": [],
55 | "source": [
56 | "class Get88D(object):\n",
57 | " \"\"\"\n",
58 | " A class mentod to retrieve and plot NEXRAD data.\n",
59 | " \n",
60 | " The metar retrieval is a modification of code found at:\n",
61 | " https://github.com/akrherz/iem/blob/master/scripts/asos/iem_scraper_example.py\n",
62 | " \n",
63 | " It is dependent upon the Iowa State Mesonet database.\n",
64 | " \"\"\"\n",
65 | " def __init__(self, radarID):\n",
66 | " '''Initialize the class'''\n",
67 | "\n",
68 | " # Set date formats to be used with datetime\n",
69 | " self.d_fmt = \"%Y-%m-%d %H:%M\"\n",
70 | " self.dout_fmt = \"%Y-%m-%d_%H:%M\"\n",
71 | " \n",
72 | " # Use passed arguments\n",
73 | " self.radarID = radarID\n",
74 | "\n",
75 | " def get_data(self):\n",
76 | " '''Function to return metar data and create output text file'''\n",
77 | " # Query the radarID directory to get file list\n",
78 | " SERVICE = \"http://nomads.ncep.noaa.gov/pub/data/nccf/radar/nexrad_level2\"\n",
79 | " nexurl = '%s/%s/'%(SERVICE, self.radarID)\n",
80 | " response = urllib2.urlopen(\"%s%s\"%(nexurl, \"dir.list\"))\n",
81 | " self.list88D = response.read().split(\"\\n\")\n",
82 | " \n",
83 | " # At this point you have a list of data files, BUT there are 2 columns\n",
84 | " # col 1 = file size, col2 = filename\n",
85 | " \n",
86 | " # Now grab the latest data file and save it locally to open\n",
87 | " data = urllib2.urlopen(\"%s%s\"%(nexurl,self.list88D[-2].split(\" \")[1]))\n",
88 | " with open(\"latest88D.bz\", \"wb\") as code:\n",
89 | " code.write(data.read())\n",
90 | "\n",
91 | " def plot_nexrad(self, vmin=None, vmax=None, xlims=None, ylims=None):\n",
92 | " '''Create a plot'''\n",
93 | " # Create a PyArt radar instance\n",
94 | " fig, ax = plt.subplots()\n",
95 | " #ax = plt.axes()\n",
96 | " self.r=pyart.io.read_nexrad_archive(\"latest88D.bz\")\n",
97 | " d=pyart.graph.RadarDisplay(self.r)\n",
98 | " d.plot('reflectivity',0, vmin=vmin, vmax=vmax, cmap=\"pyart_Carbone42\")\n",
99 | " if xlims is None:\n",
100 | " xlims = (-250., 250)\n",
101 | " if ylims is None:\n",
102 | " ylims = (-250., 250)\n",
103 | " d.set_limits(xlims, ylims)\n",
104 | " \n",
105 | " def remove_bz(self):\n",
106 | " os.remove(\"latest88D.bz\")"
107 | ]
108 | },
109 | {
110 | "cell_type": "markdown",
111 | "metadata": {},
112 | "source": [
113 | "Now lets make a current plot!"
114 | ]
115 | },
116 | {
117 | "cell_type": "code",
118 | "execution_count": 6,
119 | "metadata": {
120 | "collapsed": false
121 | },
122 | "outputs": [
123 | {
124 | "data": {
125 | "image/png": "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\n",
126 | "text/plain": [
127 | ""
128 | ]
129 | },
130 | "metadata": {},
131 | "output_type": "display_data"
132 | }
133 | ],
134 | "source": [
135 | "radarID = \"KABR\"#KCYS\"\n",
136 | "Radar = Get88D(radarID)\n",
137 | "Radar.get_data()\n",
138 | "Radar.plot_nexrad(vmin=-10, vmax=60.)\n",
139 | "Radar.remove_bz()"
140 | ]
141 | },
142 | {
143 | "cell_type": "markdown",
144 | "metadata": {},
145 | "source": [
146 | " Now we can open using ARTView to access features via GUI"
147 | ]
148 | },
149 | {
150 | "cell_type": "code",
151 | "execution_count": 8,
152 | "metadata": {
153 | "collapsed": false
154 | },
155 | "outputs": [
156 | {
157 | "name": "stdout",
158 | "output_type": "stream",
159 | "text": [
160 | "Changed Scan types, reinitializing\n"
161 | ]
162 | }
163 | ],
164 | "source": [
165 | "artview.view.view(Radar.r)"
166 | ]
167 | },
168 | {
169 | "cell_type": "code",
170 | "execution_count": null,
171 | "metadata": {
172 | "collapsed": true
173 | },
174 | "outputs": [],
175 | "source": []
176 | }
177 | ],
178 | "metadata": {
179 | "kernelspec": {
180 | "display_name": "Python 2",
181 | "language": "python",
182 | "name": "python2"
183 | },
184 | "language_info": {
185 | "codemirror_mode": {
186 | "name": "ipython",
187 | "version": 2
188 | },
189 | "file_extension": ".py",
190 | "mimetype": "text/x-python",
191 | "name": "python",
192 | "nbconvert_exporter": "python",
193 | "pygments_lexer": "ipython2",
194 | "version": "2.7.10"
195 | }
196 | },
197 | "nbformat": 4,
198 | "nbformat_minor": 0
199 | }
200 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2015,
2 | All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with or without
5 | modification, are permitted provided that the following conditions are met:
6 |
7 | * Redistributions of source code must retain the above copyright notice, this
8 | list of conditions and the following disclaimer.
9 |
10 | * Redistributions in binary form must reproduce the above copyright notice,
11 | this list of conditions and the following disclaimer in the documentation
12 | and/or other materials provided with the distribution.
13 |
14 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
15 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
17 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
18 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
20 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
21 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
22 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 |
25 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # AMS Short Course on Open Source Radar Software
2 | Welcome to the AMS Short Course on Open Source Radar Software
3 |
4 | This living repository was first created for the 37th conference on Radar Meteorology
5 |
6 | ### Pre-course install instructions
7 |
8 | Prior to the course it would be extremely helpful if all attenders could
9 | install Anaconda and Py-ART using the following steps.
10 |
11 |
12 | 1. Download and install Anaconda from Continuum Analytics using the
13 | instructions on the site, http://continuum.io/downloads.
14 | Add Anaconda to your path if/when asked.
15 |
16 | 2. Open a terminal or command prompt and install basemap and netcdf using the
17 | command:
18 |
19 | ```
20 | conda install basemap netcdf4
21 | ```
22 |
23 | Answer yes to any prompts.
24 |
25 | 3. In the same terminal or command prompt install Py-ART using the command:
26 |
27 | ```
28 | conda install -c https://conda.anaconda.org/jjhelmus pyart
29 | ```
30 |
31 | Answer yes to any prompts.
32 |
33 | ### Contents
34 |
35 | > Course Outline
36 | >
37 | > Welcome Slides
38 | >
39 | >Intro to Python and SciPy
40 | >
41 | >Basic Py-ART
42 | >
43 | >Py-ART IO in Detail
44 | >
45 | >Py-ART Data Model
46 | >
47 | >Simple proccessing and adding a field
48 | >
49 | >Texture and Dealiasing
50 | >
51 | >Gridding radars to a Cartesian Grid
52 | >
53 | >ARTView Demo
54 | >
55 | >Plot Current Nexrad in ARTView
56 | >
57 | >CSU Radar Tools
58 | >
59 | >PyTDA Demo
60 | >
61 |
62 |
63 | ###FigShare data repository
64 |
65 |
66 |
--------------------------------------------------------------------------------
/course_outline.rst:
--------------------------------------------------------------------------------
1 | AMS Short Course on Open Source Radar Software
2 | =============================
3 |
4 | Render this document as pdf by ``rst2pdf course_outline.rst``
5 |
6 | **08:30 - 09:15** `ARRIVAL AND INTRODUCTIONS AND INSTALLATION OF SOFTWARE AND DATA`_::
7 |
8 | Taking seats, booting notebooks...
9 |
10 | Intro slides by Scott.
11 |
12 | **09:15 - 9:30** `AN INTRODUCTION TO PYTHON AND IPYTHON`_::
13 |
14 | Python will be the key to use the presented radar software tools.
15 |
16 | Learn how to use Python for writing scripts and for interactive data analysis.
17 |
18 | Scipy, Numpy and Matplotlib
19 |
20 | What is IPython and the IPython notebook?
21 |
22 | **9:30 - 10:00** `BASIC PY-ART AND THE PY-ART DATA MODEL`_::
23 |
24 | How Py-ART reads data into Python and how to access the raw data
25 |
26 | **10:00 - 10:15** Coffee break
27 |
28 | **10:15 - 11:30** `BASIC PY-ART AND THE PY-ART DATA MODEL`_::
29 |
30 | Plotting in Py-ART
31 |
32 | **11:30 - 12:00** `EXAMPLES OF RADAR PROCESSING USING PY-ART`_::
33 |
34 | Example based study from Miami of how to view data, modify data and add the
35 | data to a radar object
36 |
37 | **12:00 - 13:30** Lunch break
38 |
39 |
40 | **13:30 - 14:00** `EXAMPLES OF RADAR PROCESSING USING PY-ART`_::
41 |
42 | Example based study from Miami of how to view data, modify data and add the
43 | data to a radar object
44 |
45 |
46 | **14:00 - 14:30** `Py-ART TOOLS, TEXTURE, DEALIAS AND GRID`_::
47 |
48 | The Gatefilter and how to use it.
49 |
50 | Processing: Texture and dealiasing.
51 |
52 | Gridding: Gridding one or more radars.
53 |
54 | **14:30 - 15:00** `PYTHON TOOLS 1: ART-VIEW`_::
55 |
56 | How to use the ARTview visualization package.
57 |
58 | How to launch a "quick" ARTview window from command line during interactive data analysis.
59 |
60 |
61 | **15:00 - 15:30** Coffee break
62 |
63 | **15:30 - 16:15** `PYTHON TOOLS 2: RADAR MET TOOLS`_::
64 |
65 | PyTDMA and CSU Radar Tools
66 |
67 | **16:15 - 17:00** `WRAP UP AND FUTHER DISCUSSION`_::
68 |
69 | Questions and comments.
70 |
71 | Feedback.
72 |
73 |
74 | .. raw:: pdf
75 |
76 | PageBreak
77 |
78 |
79 | ARRIVAL AND INTRODUCTIONS AND INSTALLATION OF SOFTWARE AND DATA
80 | ---------------------------------------------------------------
81 |
82 | Time to settle in and say hello. Course tutors will open the course and introduce themselves and their projects, as well as the general structure and concept of the short course.
83 |
84 |
85 | AN INTRODUCTION TO PYTHON AND IPYTHON
86 | -------------------------------------
87 |
88 | Run By Jonathan
89 |
90 | BASIC PY-ART AND THE PY-ART DATA MODEL
91 | --------------------------------------
92 |
93 | Run By Jonathan
94 |
95 |
96 | EXAMPLES OF RADAR PROCESSING USING PY-ART
97 | -----------------------------------------
98 |
99 | Investigating data from the Miami Nexrad by Scott.
100 |
101 |
102 | Py-ART TOOLS, TEXTURE, DEALIAS AND GRID
103 | ---------------------------------------
104 |
105 | All Oklahoma centric run by Scott
106 |
107 |
108 | PYTHON TOOLS 1: ART-VIEW
109 | ------------------------
110 |
111 | Nick will show us ART View!
112 |
113 |
114 | PYTHON TOOLS 2: RADAR MET TOOLS
115 | -------------------------------
116 |
117 | The Great work from CSU and NASA MSFC by Tim
118 |
119 |
120 | WRAP UP AND FUTHER DISCUSSION
121 | -----------------------------
122 |
123 | Feedback and further discussion
124 | ALL
125 |
126 |
--------------------------------------------------------------------------------
/data/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openradar/AMS-Short-Course-on-Open-Source-Radar-Software/9c668386b747f654deeb91e19cf2ac823139b38b/data/README.md
--------------------------------------------------------------------------------
/data/provision_data.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | wget \
3 | https://ndownloader.figshare.com/articles/1537461/versions/6 \
4 | -O pyart_course_data.zip
5 | unzip -o pyart_course_data.zip
6 | mv 3402575_KAMX_20140417_1056 KAMX_20140417_1056
7 | rm -f pyart_course_data.zip
8 |
9 |
--------------------------------------------------------------------------------
/images/ams.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openradar/AMS-Short-Course-on-Open-Source-Radar-Software/9c668386b747f654deeb91e19cf2ac823139b38b/images/ams.jpg
--------------------------------------------------------------------------------
/images/arm_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openradar/AMS-Short-Course-on-Open-Source-Radar-Software/9c668386b747f654deeb91e19cf2ac823139b38b/images/arm_logo.png
--------------------------------------------------------------------------------
/images/freebeer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openradar/AMS-Short-Course-on-Open-Source-Radar-Software/9c668386b747f654deeb91e19cf2ac823139b38b/images/freebeer.png
--------------------------------------------------------------------------------
/images/jupyter-logo.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/images/matplotlib_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openradar/AMS-Short-Course-on-Open-Source-Radar-Software/9c668386b747f654deeb91e19cf2ac823139b38b/images/matplotlib_logo.png
--------------------------------------------------------------------------------
/images/python-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openradar/AMS-Short-Course-on-Open-Source-Radar-Software/9c668386b747f654deeb91e19cf2ac823139b38b/images/python-logo.png
--------------------------------------------------------------------------------
/images/scipy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/openradar/AMS-Short-Course-on-Open-Source-Radar-Software/9c668386b747f654deeb91e19cf2ac823139b38b/images/scipy.png
--------------------------------------------------------------------------------
/testme.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 | import pyart
3 | from matplotlib import pyplot as plt
4 | import numpy as np
5 | from scipy import ndimage, signal
6 | import time
7 |
8 | if __name__ == "__main__":
9 | radar = pyart.io.read('./data/csapr_test_case.nc')
10 | display = pyart.graph.RadarMapDisplay(radar)
11 | fig = plt.figure(figsize = [10,8])
12 | display.plot_ppi_map('reflectivity', sweep = 2, resolution = 'i',
13 | vmin = -10, vmax = 64, mask_outside = False,
14 | cmap = pyart.graph.cm.NWSRef)
15 | plt.savefig('./awesome.png')
16 |
17 |
--------------------------------------------------------------------------------