Skip to content

Commit dfa1d37

Browse files
author
Luke Stagner
committed
add demo notebook
1 parent 4ed2a8b commit dfa1d37

File tree

3 files changed

+271
-1
lines changed

3 files changed

+271
-1
lines changed

.gitignore

+3
Original file line numberDiff line numberDiff line change
@@ -51,3 +51,6 @@ docs/_build/
5151

5252
# PyBuilder
5353
target/
54+
55+
# IPython
56+
.ipynb_checkpoints

README.md

+29-1
Original file line numberDiff line numberDiff line change
@@ -1 +1,29 @@
1-
GDL/IDL kernel for Jupyter
1+
IDL/GDL kernel for Jupyter
2+
3+
This requires the current development version of IPython 3.0-dev
4+
5+
To install:
6+
```sudo python setup.py install```
7+
8+
This should make an IDL directory containing the kernelspec in the ~/.ipython/kernels directory. If the directory is not made then manually create the directory with the following commands.
9+
10+
```
11+
mkdir ~/.ipython/kernels/IDL
12+
cp kernelspec/kernel.json ~/.ipython/kernels/IDL
13+
```
14+
15+
To run:
16+
```
17+
ipython console --kernel IDL
18+
```
19+
or
20+
```
21+
ipython qtconsole --kernel IDL
22+
```
23+
or
24+
```
25+
ipython notebook
26+
#Select kernel from dropdown menu
27+
```
28+
29+

demo.ipynb

+239
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,239 @@
1+
{
2+
"metadata": {
3+
"kernelspec": {
4+
"codemirror_mode": "IDL",
5+
"display_name": "IDL",
6+
"language": "IDL",
7+
"name": "idl"
8+
},
9+
"name": "",
10+
"signature": "sha256:c36a085cd13840f5c7e38f3d752f2d92cd48530483a5a7c8bffa1a2ffbe4354e"
11+
},
12+
"nbformat": 3,
13+
"nbformat_minor": 0,
14+
"worksheets": [
15+
{
16+
"cells": [
17+
{
18+
"cell_type": "heading",
19+
"level": 1,
20+
"metadata": {},
21+
"source": [
22+
"IDL Kernel Demo"
23+
]
24+
},
25+
{
26+
"cell_type": "markdown",
27+
"metadata": {},
28+
"source": [
29+
"This notebook demostrates the current capability of the IDL IPython/Jupyter Kernel"
30+
]
31+
},
32+
{
33+
"cell_type": "heading",
34+
"level": 2,
35+
"metadata": {},
36+
"source": [
37+
"Basic Input & Output"
38+
]
39+
},
40+
{
41+
"cell_type": "code",
42+
"collapsed": false,
43+
"input": [
44+
"a = 1\n",
45+
"b = 2\n",
46+
"arr = indgen(5)\n",
47+
"str = \"Hello, World!\"\n",
48+
"help,a,b,str,arr"
49+
],
50+
"language": "python",
51+
"metadata": {},
52+
"outputs": [
53+
{
54+
"output_type": "stream",
55+
"stream": "stdout",
56+
"text": [
57+
"A INT = 1\r\n",
58+
"B INT = 2\r\n",
59+
"STR STRING = 'Hello, World!'\r\n",
60+
"ARR INT = Array[5]\r\n"
61+
]
62+
}
63+
],
64+
"prompt_number": 1
65+
},
66+
{
67+
"cell_type": "code",
68+
"collapsed": false,
69+
"input": [
70+
"print,str"
71+
],
72+
"language": "python",
73+
"metadata": {},
74+
"outputs": [
75+
{
76+
"output_type": "stream",
77+
"stream": "stdout",
78+
"text": [
79+
"Hello, World!\r\n"
80+
]
81+
}
82+
],
83+
"prompt_number": 2
84+
},
85+
{
86+
"cell_type": "heading",
87+
"level": 2,
88+
"metadata": {},
89+
"source": [
90+
"Defining Functions & Procedures"
91+
]
92+
},
93+
{
94+
"cell_type": "code",
95+
"collapsed": false,
96+
"input": [
97+
"FUNCTION mysin, x\n",
98+
" return, sin(x)\n",
99+
"END"
100+
],
101+
"language": "python",
102+
"metadata": {},
103+
"outputs": [
104+
{
105+
"output_type": "stream",
106+
"stream": "stdout",
107+
"text": []
108+
}
109+
],
110+
"prompt_number": 3
111+
},
112+
{
113+
"cell_type": "code",
114+
"collapsed": false,
115+
"input": [
116+
"print, mysin(2)"
117+
],
118+
"language": "python",
119+
"metadata": {},
120+
"outputs": [
121+
{
122+
"output_type": "stream",
123+
"stream": "stdout",
124+
"text": [
125+
" 0.90930\r\n"
126+
]
127+
}
128+
],
129+
"prompt_number": 4
130+
},
131+
{
132+
"cell_type": "code",
133+
"collapsed": false,
134+
"input": [
135+
"PRO hello_world\n",
136+
" print,\"Hello, World!\"\n",
137+
"END"
138+
],
139+
"language": "python",
140+
"metadata": {},
141+
"outputs": [
142+
{
143+
"output_type": "stream",
144+
"stream": "stdout",
145+
"text": []
146+
}
147+
],
148+
"prompt_number": 5
149+
},
150+
{
151+
"cell_type": "code",
152+
"collapsed": false,
153+
"input": [
154+
"hello_world"
155+
],
156+
"language": "python",
157+
"metadata": {},
158+
"outputs": [
159+
{
160+
"output_type": "stream",
161+
"stream": "stdout",
162+
"text": [
163+
"Hello, World!\r\n"
164+
]
165+
}
166+
],
167+
"prompt_number": 6
168+
},
169+
{
170+
"cell_type": "heading",
171+
"level": 2,
172+
"metadata": {},
173+
"source": [
174+
"Inline Plots"
175+
]
176+
},
177+
{
178+
"cell_type": "code",
179+
"collapsed": false,
180+
"input": [
181+
";;This enables inline plotting\n",
182+
"!inline=1"
183+
],
184+
"language": "python",
185+
"metadata": {},
186+
"outputs": [
187+
{
188+
"output_type": "stream",
189+
"stream": "stdout",
190+
"text": []
191+
}
192+
],
193+
"prompt_number": 7
194+
},
195+
{
196+
"cell_type": "code",
197+
"collapsed": false,
198+
"input": [
199+
"x = 2*!PI*0.01*indgen(100)\n",
200+
"y1 = sin(x)\n",
201+
"y2 = cos(x)\n",
202+
"loadct,39\n",
203+
"plot,x,y1,title='Trig Functions',xtitle='Radians',ytitle='Amplitude',xrange=[0,6],charsize=1.5,background=255,color=0\n",
204+
"oplot,x,y2,color=50"
205+
],
206+
"language": "python",
207+
"metadata": {},
208+
"outputs": [
209+
{
210+
"metadata": {
211+
"png": {
212+
"height": 384,
213+
"width": 683
214+
}
215+
},
216+
"output_type": "display_data",
217+
"png": "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"
218+
},
219+
{
220+
"output_type": "stream",
221+
"stream": "stdout",
222+
"text": []
223+
}
224+
],
225+
"prompt_number": 8
226+
},
227+
{
228+
"cell_type": "code",
229+
"collapsed": false,
230+
"input": [],
231+
"language": "python",
232+
"metadata": {},
233+
"outputs": []
234+
}
235+
],
236+
"metadata": {}
237+
}
238+
]
239+
}

0 commit comments

Comments
 (0)