Talk given to the CU Boulder Computational Science and Engineering Research Group on April 20, 2017 about using NBExtensions in Jupyter Notebooks.
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

nbextensions_talk.ipynb 9.3 KiB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485
  1. {
  2. "cells": [
  3. {
  4. "cell_type": "markdown",
  5. "metadata": {
  6. "slideshow": {
  7. "slide_type": "slide"
  8. }
  9. },
  10. "source": [
  11. "# Being More Productive with Jupyter Notebooks \n",
  12. "> ## An Introduction to NBExtensions \n",
  13. "\n",
  14. "<br/>\n",
  15. "<br/>\n",
  16. "\n",
  17. "\n",
  18. "#### Keith Maull / NCAR\n",
  19. "#### April 20, 2017"
  20. ]
  21. },
  22. {
  23. "cell_type": "markdown",
  24. "metadata": {
  25. "slideshow": {
  26. "slide_type": "slide"
  27. }
  28. },
  29. "source": [
  30. "# Jupyter Notebooks\n",
  31. "<img src=\"images/jupyter.jpg\" width=\"360\"/>"
  32. ]
  33. },
  34. {
  35. "cell_type": "markdown",
  36. "metadata": {
  37. "slideshow": {
  38. "slide_type": "subslide"
  39. }
  40. },
  41. "source": [
  42. "## ... are awesome.\n",
  43. "\n",
  44. "[![](./images/icedragon_2017-04-20_14-08-19.png)](https://github.com/jupyter/jupyter/wiki/A-gallery-of-interesting-Jupyter-Notebooks)\n"
  45. ]
  46. },
  47. {
  48. "cell_type": "markdown",
  49. "metadata": {
  50. "slideshow": {
  51. "slide_type": "subslide"
  52. }
  53. },
  54. "source": [
  55. "## but if you use Jupyter ... you surely use NBextensions"
  56. ]
  57. },
  58. {
  59. "cell_type": "markdown",
  60. "metadata": {
  61. "slideshow": {
  62. "slide_type": "subslide"
  63. }
  64. },
  65. "source": [
  66. "## ... or maybe you've _heard of them_\n",
  67. "\n",
  68. "<img src=\"images/firefox_2017-04-20_10-03-00.png\" width=\"800\"/>\n"
  69. ]
  70. },
  71. {
  72. "cell_type": "markdown",
  73. "metadata": {
  74. "slideshow": {
  75. "slide_type": "subslide"
  76. }
  77. },
  78. "source": [
  79. "## ... or maybe even _seen_ them lurking ...\n",
  80. "\n",
  81. "<img src=\"images/firefox_2017-04-20_10-06-52_frog.png\" width=\"800\"/>"
  82. ]
  83. },
  84. {
  85. "cell_type": "markdown",
  86. "metadata": {
  87. "slideshow": {
  88. "slide_type": "slide"
  89. }
  90. },
  91. "source": [
  92. "# But have you _really used_ them?"
  93. ]
  94. },
  95. {
  96. "cell_type": "markdown",
  97. "metadata": {
  98. "slideshow": {
  99. "slide_type": "slide"
  100. }
  101. },
  102. "source": [
  103. "# NBExtensions in 30 seconds ..."
  104. ]
  105. },
  106. {
  107. "cell_type": "markdown",
  108. "metadata": {
  109. "slideshow": {
  110. "slide_type": "fragment"
  111. }
  112. },
  113. "source": [
  114. "## NBExtensions are to Jupyter Notebooks what plugins are to Chrome"
  115. ]
  116. },
  117. {
  118. "cell_type": "markdown",
  119. "metadata": {
  120. "slideshow": {
  121. "slide_type": "fragment"
  122. }
  123. },
  124. "source": [
  125. "## They make working <strike>on</strike> in Jupyter fun and interesting"
  126. ]
  127. },
  128. {
  129. "cell_type": "markdown",
  130. "metadata": {
  131. "slideshow": {
  132. "slide_type": "fragment"
  133. }
  134. },
  135. "source": [
  136. "## ... and they might even make you more productive"
  137. ]
  138. },
  139. {
  140. "cell_type": "markdown",
  141. "metadata": {
  142. "slideshow": {
  143. "slide_type": "slide"
  144. }
  145. },
  146. "source": [
  147. "# NB Extensions / How?"
  148. ]
  149. },
  150. {
  151. "cell_type": "markdown",
  152. "metadata": {
  153. "slideshow": {
  154. "slide_type": "fragment"
  155. }
  156. },
  157. "source": [
  158. "## To get started you'll need a few key ingredients ..."
  159. ]
  160. },
  161. {
  162. "cell_type": "markdown",
  163. "metadata": {
  164. "slideshow": {
  165. "slide_type": "fragment"
  166. }
  167. },
  168. "source": [
  169. "## ingredient 0: a current version of Jupyter!"
  170. ]
  171. },
  172. {
  173. "cell_type": "markdown",
  174. "metadata": {
  175. "slideshow": {
  176. "slide_type": "slide"
  177. }
  178. },
  179. "source": [
  180. "## NB Extensions / How? / Installation"
  181. ]
  182. },
  183. {
  184. "cell_type": "markdown",
  185. "metadata": {
  186. "slideshow": {
  187. "slide_type": "fragment"
  188. }
  189. },
  190. "source": [
  191. "### if you're using `pip` :\n",
  192. "```\n",
  193. "pip install jupyter_contrib_nbextensions\n",
  194. "```\n",
  195. "\n",
  196. "### if you're using `conda`:\n",
  197. "```\n",
  198. "jupyter contrib nbextension install [--user | --system | ...]\n",
  199. "```"
  200. ]
  201. },
  202. {
  203. "cell_type": "markdown",
  204. "metadata": {
  205. "slideshow": {
  206. "slide_type": "slide"
  207. }
  208. },
  209. "source": [
  210. "## NB Extensions / How? / Installation"
  211. ]
  212. },
  213. {
  214. "cell_type": "markdown",
  215. "metadata": {
  216. "slideshow": {
  217. "slide_type": "fragment"
  218. }
  219. },
  220. "source": [
  221. "### now check your environment ...\n",
  222. "\n",
  223. "<img src=\"images/firefox_2017-04-20_13-16-38.png\"/>"
  224. ]
  225. },
  226. {
  227. "cell_type": "markdown",
  228. "metadata": {
  229. "slideshow": {
  230. "slide_type": "subslide"
  231. }
  232. },
  233. "source": [
  234. "[![](images/icedragon_2017-04-20_14-11-49.png)](http://localhost:8889/tree#nbextensions_configurator)"
  235. ]
  236. },
  237. {
  238. "cell_type": "markdown",
  239. "metadata": {
  240. "slideshow": {
  241. "slide_type": "slide"
  242. }
  243. },
  244. "source": [
  245. "# Five plugins you should _try today_!"
  246. ]
  247. },
  248. {
  249. "cell_type": "markdown",
  250. "metadata": {
  251. "slideshow": {
  252. "slide_type": "fragment"
  253. }
  254. },
  255. "source": [
  256. "## 5: [Table of Contents](./example_document.ipynb)"
  257. ]
  258. },
  259. {
  260. "cell_type": "markdown",
  261. "metadata": {
  262. "collapsed": false,
  263. "hide_input": true,
  264. "slideshow": {
  265. "slide_type": "fragment"
  266. }
  267. },
  268. "source": [
  269. "## 4: [Code folding](./example_document.ipynb)"
  270. ]
  271. },
  272. {
  273. "cell_type": "markdown",
  274. "metadata": {
  275. "hide_input": false,
  276. "slideshow": {
  277. "slide_type": "fragment"
  278. }
  279. },
  280. "source": [
  281. "## 3: [Gist-it](./example_document.ipynb)"
  282. ]
  283. },
  284. {
  285. "cell_type": "markdown",
  286. "metadata": {
  287. "slideshow": {
  288. "slide_type": "fragment"
  289. }
  290. },
  291. "source": [
  292. "## 2: [Equation autonumbering](./example_document.ipynb)"
  293. ]
  294. },
  295. {
  296. "cell_type": "markdown",
  297. "metadata": {
  298. "hide_input": false,
  299. "slideshow": {
  300. "slide_type": "fragment"
  301. }
  302. },
  303. "source": [
  304. "## 1: [spell checker](./example_document.ipynb)"
  305. ]
  306. },
  307. {
  308. "cell_type": "markdown",
  309. "metadata": {
  310. "slideshow": {
  311. "slide_type": "fragment"
  312. }
  313. },
  314. "source": [
  315. "## 0: [Nbextensions dashboard tab](./example_document.ipynb)"
  316. ]
  317. },
  318. {
  319. "cell_type": "markdown",
  320. "metadata": {
  321. "slideshow": {
  322. "slide_type": "slide"
  323. }
  324. },
  325. "source": [
  326. "<img src=\"images/parachute-1242426_1920.jpg\" width=\"800\"/>\n",
  327. "<center>\n",
  328. "<h1>Thank you!</h1>\n",
  329. "<h4>Let's collaborate: `kmaull@ucar.edu`</h4>\n",
  330. "</center>"
  331. ]
  332. }
  333. ],
  334. "metadata": {
  335. "anaconda-cloud": {},
  336. "celltoolbar": "Slideshow",
  337. "kernelspec": {
  338. "display_name": "Python [default]",
  339. "language": "python",
  340. "name": "python2"
  341. },
  342. "language_info": {
  343. "codemirror_mode": {
  344. "name": "ipython",
  345. "version": 2
  346. },
  347. "file_extension": ".py",
  348. "mimetype": "text/x-python",
  349. "name": "python",
  350. "nbconvert_exporter": "python",
  351. "pygments_lexer": "ipython2",
  352. "version": "2.7.12"
  353. },
  354. "nbpresent": {
  355. "slides": {
  356. "bed0ac58-cf34-4f59-9302-6146dff3ab44": {
  357. "id": "bed0ac58-cf34-4f59-9302-6146dff3ab44",
  358. "layout": "manual",
  359. "prev": null,
  360. "regions": {
  361. "d1854d10-660b-4c3a-89a8-70cdb0a724c0": {
  362. "attrs": {
  363. "height": 0.8,
  364. "width": 0.8,
  365. "x": 0.1,
  366. "y": 0.1
  367. },
  368. "id": "d1854d10-660b-4c3a-89a8-70cdb0a724c0"
  369. }
  370. }
  371. }
  372. },
  373. "themes": {
  374. "default": "b802de63-d7e4-4da1-98e4-ee0067e6956a",
  375. "theme": {
  376. "b802de63-d7e4-4da1-98e4-ee0067e6956a": {
  377. "id": "b802de63-d7e4-4da1-98e4-ee0067e6956a",
  378. "palette": {
  379. "19cc588f-0593-49c9-9f4b-e4d7cc113b1c": {
  380. "id": "19cc588f-0593-49c9-9f4b-e4d7cc113b1c",
  381. "rgb": [
  382. 252,
  383. 252,
  384. 252
  385. ]
  386. },
  387. "31af15d2-7e15-44c5-ab5e-e04b16a89eff": {
  388. "id": "31af15d2-7e15-44c5-ab5e-e04b16a89eff",
  389. "rgb": [
  390. 68,
  391. 68,
  392. 68
  393. ]
  394. },
  395. "50f92c45-a630-455b-aec3-788680ec7410": {
  396. "id": "50f92c45-a630-455b-aec3-788680ec7410",
  397. "rgb": [
  398. 155,
  399. 177,
  400. 192
  401. ]
  402. },
  403. "c5cc3653-2ee1-402a-aba2-7caae1da4f6c": {
  404. "id": "c5cc3653-2ee1-402a-aba2-7caae1da4f6c",
  405. "rgb": [
  406. 43,
  407. 126,
  408. 184
  409. ]
  410. },
  411. "efa7f048-9acb-414c-8b04-a26811511a21": {
  412. "id": "efa7f048-9acb-414c-8b04-a26811511a21",
  413. "rgb": [
  414. 25.118061674008803,
  415. 73.60176211453744,
  416. 107.4819383259912
  417. ]
  418. }
  419. },
  420. "rules": {
  421. "blockquote": {
  422. "color": "50f92c45-a630-455b-aec3-788680ec7410"
  423. },
  424. "code": {
  425. "font-family": "Anonymous Pro"
  426. },
  427. "h1": {
  428. "color": "c5cc3653-2ee1-402a-aba2-7caae1da4f6c",
  429. "font-family": "Lato",
  430. "font-size": 8
  431. },
  432. "h2": {
  433. "color": "c5cc3653-2ee1-402a-aba2-7caae1da4f6c",
  434. "font-family": "Lato",
  435. "font-size": 6
  436. },
  437. "h3": {
  438. "color": "50f92c45-a630-455b-aec3-788680ec7410",
  439. "font-family": "Lato",
  440. "font-size": 5.5
  441. },
  442. "h4": {
  443. "color": "c5cc3653-2ee1-402a-aba2-7caae1da4f6c",
  444. "font-family": "Lato",
  445. "font-size": 5
  446. },
  447. "h5": {
  448. "font-family": "Lato"
  449. },
  450. "h6": {
  451. "font-family": "Lato"
  452. },
  453. "h7": {
  454. "font-family": "Lato"
  455. },
  456. "pre": {
  457. "font-family": "Anonymous Pro",
  458. "font-size": 4
  459. }
  460. },
  461. "text-base": {
  462. "font-family": "Merriweather",
  463. "font-size": 4
  464. }
  465. }
  466. }
  467. }
  468. },
  469. "toc": {
  470. "nav_menu": {
  471. "height": "512px",
  472. "width": "252px"
  473. },
  474. "navigate_menu": true,
  475. "number_sections": false,
  476. "sideBar": true,
  477. "threshold": 4,
  478. "toc_cell": false,
  479. "toc_section_display": "none",
  480. "toc_window_display": false
  481. }
  482. },
  483. "nbformat": 4,
  484. "nbformat_minor": 0
  485. }