index.html 50 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742
  1. <!doctype html>
  2. <html lang="en" class="no-js">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1">
  6. <link rel="shortcut icon" href="../../assets/images/favicon.png">
  7. <meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.3">
  8. <title>Gallery Notebook - Jypyter Sketcher</title>
  9. <link rel="stylesheet" href="../../assets/stylesheets/main.947af8d5.min.css">
  10. <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
  11. <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700%7CRoboto+Mono&display=fallback">
  12. <style>body,input{font-family:"Roboto",-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono",SFMono-Regular,Consolas,Menlo,monospace}</style>
  13. </head>
  14. <body dir="ltr">
  15. <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
  16. <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
  17. <label class="md-overlay" for="__drawer"></label>
  18. <div data-md-component="skip">
  19. <a href="#gallery" class="md-skip">
  20. Skip to content
  21. </a>
  22. </div>
  23. <div data-md-component="announce">
  24. </div>
  25. <header class="md-header" data-md-component="header">
  26. <nav class="md-header-nav md-grid" aria-label="Header">
  27. <a href="../.." title="Jypyter Sketcher" class="md-header-nav__button md-logo" aria-label="Jypyter Sketcher">
  28. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 003-3 3 3 0 00-3-3 3 3 0 00-3 3 3 3 0 003 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54z"/></svg>
  29. </a>
  30. <label class="md-header-nav__button md-icon" for="__drawer">
  31. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2z"/></svg>
  32. </label>
  33. <div class="md-header-nav__title" data-md-component="header-title">
  34. <div class="md-header-nav__ellipsis">
  35. <span class="md-header-nav__topic md-ellipsis">
  36. Jypyter Sketcher
  37. </span>
  38. <span class="md-header-nav__topic md-ellipsis">
  39. Gallery Notebook
  40. </span>
  41. </div>
  42. </div>
  43. <label class="md-header-nav__button md-icon" for="__search">
  44. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0116 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 019.5 16 6.5 6.5 0 013 9.5 6.5 6.5 0 019.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
  45. </label>
  46. <div class="md-search" data-md-component="search" role="dialog">
  47. <label class="md-search__overlay" for="__search"></label>
  48. <div class="md-search__inner" role="search">
  49. <form class="md-search__form" name="search">
  50. <input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" data-md-state="active">
  51. <label class="md-search__icon md-icon" for="__search">
  52. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0116 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 019.5 16 6.5 6.5 0 013 9.5 6.5 6.5 0 019.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
  53. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
  54. </label>
  55. <button type="reset" class="md-search__icon md-icon" aria-label="Clear" data-md-component="search-reset" tabindex="-1">
  56. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"/></svg>
  57. </button>
  58. </form>
  59. <div class="md-search__output">
  60. <div class="md-search__scrollwrap" data-md-scrollfix>
  61. <div class="md-search-result" data-md-component="search-result">
  62. <div class="md-search-result__meta">
  63. Initializing search
  64. </div>
  65. <ol class="md-search-result__list"></ol>
  66. </div>
  67. </div>
  68. </div>
  69. </div>
  70. </div>
  71. </nav>
  72. </header>
  73. <div class="md-container" data-md-component="container">
  74. <main class="md-main" data-md-component="main">
  75. <div class="md-main__inner md-grid">
  76. <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
  77. <div class="md-sidebar__scrollwrap">
  78. <div class="md-sidebar__inner">
  79. <nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
  80. <label class="md-nav__title" for="__drawer">
  81. <a href="../.." title="Jypyter Sketcher" class="md-nav__button md-logo" aria-label="Jypyter Sketcher">
  82. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 003-3 3 3 0 00-3-3 3 3 0 00-3 3 3 3 0 003 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54z"/></svg>
  83. </a>
  84. Jypyter Sketcher
  85. </label>
  86. <ul class="md-nav__list" data-md-scrollfix>
  87. <li class="md-nav__item">
  88. <a href="../.." title="Home" class="md-nav__link">
  89. Home
  90. </a>
  91. </li>
  92. <li class="md-nav__item">
  93. <a href="../../about/" title="About" class="md-nav__link">
  94. About
  95. </a>
  96. </li>
  97. <li class="md-nav__item">
  98. <a href="../../presentation/" title="Presentation" class="md-nav__link">
  99. Presentation
  100. </a>
  101. </li>
  102. <li class="md-nav__item">
  103. <a href="../../learningbyexample/" title="Learning by Example" class="md-nav__link">
  104. Learning by Example
  105. </a>
  106. </li>
  107. <li class="md-nav__item">
  108. <a href="../../shapereference/" title="Shapes Reference" class="md-nav__link">
  109. Shapes Reference
  110. </a>
  111. </li>
  112. <li class="md-nav__item">
  113. <a href="../../yamlsketcher/" title="YAML files Reference" class="md-nav__link">
  114. YAML files Reference
  115. </a>
  116. </li>
  117. <li class="md-nav__item">
  118. <a href="../../gallerydoc/" title="Gallery" class="md-nav__link">
  119. Gallery
  120. </a>
  121. </li>
  122. <li class="md-nav__item md-nav__item--active">
  123. <input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
  124. <a href="./" title="Gallery Notebook" class="md-nav__link md-nav__link--active">
  125. Gallery Notebook
  126. </a>
  127. </li>
  128. </ul>
  129. </nav>
  130. </div>
  131. </div>
  132. </div>
  133. <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
  134. <div class="md-sidebar__scrollwrap">
  135. <div class="md-sidebar__inner">
  136. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  137. </nav>
  138. </div>
  139. </div>
  140. </div>
  141. <div class="md-content">
  142. <article class="md-content__inner md-typeset">
  143. <div class="notebook-content">
  144. <style type="text/css">/*!
  145. *
  146. * IPython notebook
  147. *
  148. */
  149. /* CSS font colors for translated ANSI escape sequences */
  150. /* The color values are a mix of
  151. http://www.xcolors.net/dl/baskerville-ivorylight and
  152. http://www.xcolors.net/dl/euphrasia */
  153. .ansi-black-fg {
  154. color: #3E424D;
  155. }
  156. .ansi-black-bg {
  157. background-color: #3E424D;
  158. }
  159. .ansi-black-intense-fg {
  160. color: #282C36;
  161. }
  162. .ansi-black-intense-bg {
  163. background-color: #282C36;
  164. }
  165. .ansi-red-fg {
  166. color: #E75C58;
  167. }
  168. .ansi-red-bg {
  169. background-color: #E75C58;
  170. }
  171. .ansi-red-intense-fg {
  172. color: #B22B31;
  173. }
  174. .ansi-red-intense-bg {
  175. background-color: #B22B31;
  176. }
  177. .ansi-green-fg {
  178. color: #00A250;
  179. }
  180. .ansi-green-bg {
  181. background-color: #00A250;
  182. }
  183. .ansi-green-intense-fg {
  184. color: #007427;
  185. }
  186. .ansi-green-intense-bg {
  187. background-color: #007427;
  188. }
  189. .ansi-yellow-fg {
  190. color: #DDB62B;
  191. }
  192. .ansi-yellow-bg {
  193. background-color: #DDB62B;
  194. }
  195. .ansi-yellow-intense-fg {
  196. color: #B27D12;
  197. }
  198. .ansi-yellow-intense-bg {
  199. background-color: #B27D12;
  200. }
  201. .ansi-blue-fg {
  202. color: #208FFB;
  203. }
  204. .ansi-blue-bg {
  205. background-color: #208FFB;
  206. }
  207. .ansi-blue-intense-fg {
  208. color: #0065CA;
  209. }
  210. .ansi-blue-intense-bg {
  211. background-color: #0065CA;
  212. }
  213. .ansi-magenta-fg {
  214. color: #D160C4;
  215. }
  216. .ansi-magenta-bg {
  217. background-color: #D160C4;
  218. }
  219. .ansi-magenta-intense-fg {
  220. color: #A03196;
  221. }
  222. .ansi-magenta-intense-bg {
  223. background-color: #A03196;
  224. }
  225. .ansi-cyan-fg {
  226. color: #60C6C8;
  227. }
  228. .ansi-cyan-bg {
  229. background-color: #60C6C8;
  230. }
  231. .ansi-cyan-intense-fg {
  232. color: #258F8F;
  233. }
  234. .ansi-cyan-intense-bg {
  235. background-color: #258F8F;
  236. }
  237. .ansi-white-fg {
  238. color: #C5C1B4;
  239. }
  240. .ansi-white-bg {
  241. background-color: #C5C1B4;
  242. }
  243. .ansi-white-intense-fg {
  244. color: #A1A6B2;
  245. }
  246. .ansi-white-intense-bg {
  247. background-color: #A1A6B2;
  248. }
  249. .ansi-default-inverse-fg {
  250. color: #FFFFFF;
  251. }
  252. .ansi-default-inverse-bg {
  253. background-color: #000000;
  254. }
  255. .ansi-bold {
  256. font-weight: bold;
  257. }
  258. .ansi-underline {
  259. text-decoration: underline;
  260. }
  261. /* The following styles are deprecated an will be removed in a future version */
  262. .ansibold {
  263. font-weight: bold;
  264. }
  265. .ansi-inverse {
  266. outline: 0.5px dotted;
  267. }
  268. /* use dark versions for foreground, to improve visibility */
  269. .ansiblack {
  270. color: black;
  271. }
  272. .ansired {
  273. color: darkred;
  274. }
  275. .ansigreen {
  276. color: darkgreen;
  277. }
  278. .ansiyellow {
  279. color: #c4a000;
  280. }
  281. .ansiblue {
  282. color: darkblue;
  283. }
  284. .ansipurple {
  285. color: darkviolet;
  286. }
  287. .ansicyan {
  288. color: steelblue;
  289. }
  290. .ansigray {
  291. color: gray;
  292. }
  293. /* and light for background, for the same reason */
  294. .ansibgblack {
  295. background-color: black;
  296. }
  297. .ansibgred {
  298. background-color: red;
  299. }
  300. .ansibggreen {
  301. background-color: green;
  302. }
  303. .ansibgyellow {
  304. background-color: yellow;
  305. }
  306. .ansibgblue {
  307. background-color: blue;
  308. }
  309. .ansibgpurple {
  310. background-color: magenta;
  311. }
  312. .ansibgcyan {
  313. background-color: cyan;
  314. }
  315. .ansibggray {
  316. background-color: gray;
  317. }
  318. div.cell {
  319. /* Old browsers */
  320. display: -webkit-box;
  321. -webkit-box-orient: vertical;
  322. -webkit-box-align: stretch;
  323. display: -moz-box;
  324. -moz-box-orient: vertical;
  325. -moz-box-align: stretch;
  326. display: box;
  327. box-orient: vertical;
  328. box-align: stretch;
  329. /* Modern browsers */
  330. display: flex;
  331. flex-direction: column;
  332. align-items: stretch;
  333. border-radius: 2px;
  334. box-sizing: border-box;
  335. -moz-box-sizing: border-box;
  336. -webkit-box-sizing: border-box;
  337. border-width: 1px;
  338. border-style: solid;
  339. border-color: transparent;
  340. width: 100%;
  341. padding: 5px;
  342. /* This acts as a spacer between cells, that is outside the border */
  343. margin: 0px;
  344. outline: none;
  345. position: relative;
  346. overflow: visible;
  347. }
  348. div.cell:before {
  349. position: absolute;
  350. display: block;
  351. top: -1px;
  352. left: -1px;
  353. width: 5px;
  354. height: calc(100% + 2px);
  355. content: '';
  356. background: transparent;
  357. }
  358. div.cell.jupyter-soft-selected {
  359. border-left-color: #E3F2FD;
  360. border-left-width: 1px;
  361. padding-left: 5px;
  362. border-right-color: #E3F2FD;
  363. border-right-width: 1px;
  364. background: #E3F2FD;
  365. }
  366. @media print {
  367. div.cell.jupyter-soft-selected {
  368. border-color: transparent;
  369. }
  370. }
  371. div.cell.selected,
  372. div.cell.selected.jupyter-soft-selected {
  373. border-color: #ababab;
  374. }
  375. div.cell.selected:before,
  376. div.cell.selected.jupyter-soft-selected:before {
  377. position: absolute;
  378. display: block;
  379. top: -1px;
  380. left: -1px;
  381. width: 5px;
  382. height: calc(100% + 2px);
  383. content: '';
  384. background: #42A5F5;
  385. }
  386. @media print {
  387. div.cell.selected,
  388. div.cell.selected.jupyter-soft-selected {
  389. border-color: transparent;
  390. }
  391. }
  392. .edit_mode div.cell.selected {
  393. border-color: #66BB6A;
  394. }
  395. .edit_mode div.cell.selected:before {
  396. position: absolute;
  397. display: block;
  398. top: -1px;
  399. left: -1px;
  400. width: 5px;
  401. height: calc(100% + 2px);
  402. content: '';
  403. background: #66BB6A;
  404. }
  405. @media print {
  406. .edit_mode div.cell.selected {
  407. border-color: transparent;
  408. }
  409. }
  410. .prompt {
  411. /* This needs to be wide enough for 3 digit prompt numbers: In[100]: */
  412. min-width: 14ex;
  413. /* This padding is tuned to match the padding on the CodeMirror editor. */
  414. padding: 0.4em;
  415. margin: 0px;
  416. font-family: monospace;
  417. text-align: right;
  418. /* This has to match that of the the CodeMirror class line-height below */
  419. line-height: 1.21429em;
  420. /* Don't highlight prompt number selection */
  421. -webkit-touch-callout: none;
  422. -webkit-user-select: none;
  423. -khtml-user-select: none;
  424. -moz-user-select: none;
  425. -ms-user-select: none;
  426. user-select: none;
  427. /* Use default cursor */
  428. cursor: default;
  429. }
  430. @media (max-width: 540px) {
  431. .prompt {
  432. text-align: left;
  433. }
  434. }
  435. div.inner_cell {
  436. min-width: 0;
  437. /* Old browsers */
  438. display: -webkit-box;
  439. -webkit-box-orient: vertical;
  440. -webkit-box-align: stretch;
  441. display: -moz-box;
  442. -moz-box-orient: vertical;
  443. -moz-box-align: stretch;
  444. display: box;
  445. box-orient: vertical;
  446. box-align: stretch;
  447. /* Modern browsers */
  448. display: flex;
  449. flex-direction: column;
  450. align-items: stretch;
  451. /* Old browsers */
  452. -webkit-box-flex: 1;
  453. -moz-box-flex: 1;
  454. box-flex: 1;
  455. /* Modern browsers */
  456. flex: 1;
  457. }
  458. /* input_area and input_prompt must match in top border and margin for alignment */
  459. div.input_area {
  460. border: 1px solid #cfcfcf;
  461. border-radius: 2px;
  462. background: #f7f7f7;
  463. line-height: 1.21429em;
  464. }
  465. /* This is needed so that empty prompt areas can collapse to zero height when there
  466. is no content in the output_subarea and the prompt. The main purpose of this is
  467. to make sure that empty JavaScript output_subareas have no height. */
  468. div.prompt:empty {
  469. padding-top: 0;
  470. padding-bottom: 0;
  471. }
  472. div.unrecognized_cell {
  473. padding: 5px 5px 5px 0px;
  474. /* Old browsers */
  475. display: -webkit-box;
  476. -webkit-box-orient: horizontal;
  477. -webkit-box-align: stretch;
  478. display: -moz-box;
  479. -moz-box-orient: horizontal;
  480. -moz-box-align: stretch;
  481. display: box;
  482. box-orient: horizontal;
  483. box-align: stretch;
  484. /* Modern browsers */
  485. display: flex;
  486. flex-direction: row;
  487. align-items: stretch;
  488. }
  489. div.unrecognized_cell .inner_cell {
  490. border-radius: 2px;
  491. padding: 5px;
  492. font-weight: bold;
  493. color: red;
  494. border: 1px solid #cfcfcf;
  495. background: #eaeaea;
  496. }
  497. div.unrecognized_cell .inner_cell a {
  498. color: inherit;
  499. text-decoration: none;
  500. }
  501. div.unrecognized_cell .inner_cell a:hover {
  502. color: inherit;
  503. text-decoration: none;
  504. }
  505. @media (max-width: 540px) {
  506. div.unrecognized_cell > div.prompt {
  507. display: none;
  508. }
  509. }
  510. div.code_cell {
  511. /* avoid page breaking on code cells when printing */
  512. }
  513. @media print {
  514. div.code_cell {
  515. page-break-inside: avoid;
  516. }
  517. }
  518. /* any special styling for code cells that are currently running goes here */
  519. div.input {
  520. page-break-inside: avoid;
  521. /* Old browsers */
  522. display: -webkit-box;
  523. -webkit-box-orient: horizontal;
  524. -webkit-box-align: stretch;
  525. display: -moz-box;
  526. -moz-box-orient: horizontal;
  527. -moz-box-align: stretch;
  528. display: box;
  529. box-orient: horizontal;
  530. box-align: stretch;
  531. /* Modern browsers */
  532. display: flex;
  533. flex-direction: row;
  534. align-items: stretch;
  535. }
  536. @media (max-width: 540px) {
  537. div.input {
  538. /* Old browsers */
  539. display: -webkit-box;
  540. -webkit-box-orient: vertical;
  541. -webkit-box-align: stretch;
  542. display: -moz-box;
  543. -moz-box-orient: vertical;
  544. -moz-box-align: stretch;
  545. display: box;
  546. box-orient: vertical;
  547. box-align: stretch;
  548. /* Modern browsers */
  549. display: flex;
  550. flex-direction: column;
  551. align-items: stretch;
  552. }
  553. }
  554. /* input_area and input_prompt must match in top border and margin for alignment */
  555. div.input_prompt {
  556. color: #303F9F;
  557. border-top: 1px solid transparent;
  558. }
  559. div.input_area > div.highlight {
  560. margin: 0.4em;
  561. border: none;
  562. padding: 0px;
  563. background-color: transparent;
  564. }
  565. div.input_area > div.highlight > pre {
  566. margin: 0px;
  567. border: none;
  568. padding: 0px;
  569. background-color: transparent;
  570. }
  571. /* The following gets added to the <head> if it is detected that the user has a
  572. * monospace font with inconsistent normal/bold/italic height. See
  573. * notebookmain.js. Such fonts will have keywords vertically offset with
  574. * respect to the rest of the text. The user should select a better font.
  575. * See: https://github.com/ipython/ipython/issues/1503
  576. *
  577. * .CodeMirror span {
  578. * vertical-align: bottom;
  579. * }
  580. */
  581. .CodeMirror {
  582. line-height: 1.21429em;
  583. /* Changed from 1em to our global default */
  584. font-size: 14px;
  585. height: auto;
  586. /* Changed to auto to autogrow */
  587. background: none;
  588. /* Changed from white to allow our bg to show through */
  589. }
  590. .CodeMirror-scroll {
  591. /* The CodeMirror docs are a bit fuzzy on if overflow-y should be hidden or visible.*/
  592. /* We have found that if it is visible, vertical scrollbars appear with font size changes.*/
  593. overflow-y: hidden;
  594. overflow-x: auto;
  595. }
  596. .CodeMirror-lines {
  597. /* In CM2, this used to be 0.4em, but in CM3 it went to 4px. We need the em value because */
  598. /* we have set a different line-height and want this to scale with that. */
  599. /* Note that this should set vertical padding only, since CodeMirror assumes
  600. that horizontal padding will be set on CodeMirror pre */
  601. padding: 0.4em 0;
  602. }
  603. .CodeMirror-linenumber {
  604. padding: 0 8px 0 4px;
  605. }
  606. .CodeMirror-gutters {
  607. border-bottom-left-radius: 2px;
  608. border-top-left-radius: 2px;
  609. }
  610. .CodeMirror pre {
  611. /* In CM3 this went to 4px from 0 in CM2. This sets horizontal padding only,
  612. use .CodeMirror-lines for vertical */
  613. padding: 0 0.4em;
  614. border: 0;
  615. border-radius: 0;
  616. }
  617. .CodeMirror-cursor {
  618. border-left: 1.4px solid black;
  619. }
  620. @media screen and (min-width: 2138px) and (max-width: 4319px) {
  621. .CodeMirror-cursor {
  622. border-left: 2px solid black;
  623. }
  624. }
  625. @media screen and (min-width: 4320px) {
  626. .CodeMirror-cursor {
  627. border-left: 4px solid black;
  628. }
  629. }
  630. /*
  631. Original style from softwaremaniacs.org (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org>
  632. Adapted from GitHub theme
  633. */
  634. .highlight-base {
  635. color: #000;
  636. }
  637. .highlight-variable {
  638. color: #000;
  639. }
  640. .highlight-variable-2 {
  641. color: #1a1a1a;
  642. }
  643. .highlight-variable-3 {
  644. color: #333333;
  645. }
  646. .highlight-string {
  647. color: #BA2121;
  648. }
  649. .highlight-comment {
  650. color: #408080;
  651. font-style: italic;
  652. }
  653. .highlight-number {
  654. color: #080;
  655. }
  656. .highlight-atom {
  657. color: #88F;
  658. }
  659. .highlight-keyword {
  660. color: #008000;
  661. font-weight: bold;
  662. }
  663. .highlight-builtin {
  664. color: #008000;
  665. }
  666. .highlight-error {
  667. color: #f00;
  668. }
  669. .highlight-operator {
  670. color: #AA22FF;
  671. font-weight: bold;
  672. }
  673. .highlight-meta {
  674. color: #AA22FF;
  675. }
  676. /* previously not defined, copying from default codemirror */
  677. .highlight-def {
  678. color: #00f;
  679. }
  680. .highlight-string-2 {
  681. color: #f50;
  682. }
  683. .highlight-qualifier {
  684. color: #555;
  685. }
  686. .highlight-bracket {
  687. color: #997;
  688. }
  689. .highlight-tag {
  690. color: #170;
  691. }
  692. .highlight-attribute {
  693. color: #00c;
  694. }
  695. .highlight-header {
  696. color: blue;
  697. }
  698. .highlight-quote {
  699. color: #090;
  700. }
  701. .highlight-link {
  702. color: #00c;
  703. }
  704. /* apply the same style to codemirror */
  705. .cm-s-ipython span.cm-keyword {
  706. color: #008000;
  707. font-weight: bold;
  708. }
  709. .cm-s-ipython span.cm-atom {
  710. color: #88F;
  711. }
  712. .cm-s-ipython span.cm-number {
  713. color: #080;
  714. }
  715. .cm-s-ipython span.cm-def {
  716. color: #00f;
  717. }
  718. .cm-s-ipython span.cm-variable {
  719. color: #000;
  720. }
  721. .cm-s-ipython span.cm-operator {
  722. color: #AA22FF;
  723. font-weight: bold;
  724. }
  725. .cm-s-ipython span.cm-variable-2 {
  726. color: #1a1a1a;
  727. }
  728. .cm-s-ipython span.cm-variable-3 {
  729. color: #333333;
  730. }
  731. .cm-s-ipython span.cm-comment {
  732. color: #408080;
  733. font-style: italic;
  734. }
  735. .cm-s-ipython span.cm-string {
  736. color: #BA2121;
  737. }
  738. .cm-s-ipython span.cm-string-2 {
  739. color: #f50;
  740. }
  741. .cm-s-ipython span.cm-meta {
  742. color: #AA22FF;
  743. }
  744. .cm-s-ipython span.cm-qualifier {
  745. color: #555;
  746. }
  747. .cm-s-ipython span.cm-builtin {
  748. color: #008000;
  749. }
  750. .cm-s-ipython span.cm-bracket {
  751. color: #997;
  752. }
  753. .cm-s-ipython span.cm-tag {
  754. color: #170;
  755. }
  756. .cm-s-ipython span.cm-attribute {
  757. color: #00c;
  758. }
  759. .cm-s-ipython span.cm-header {
  760. color: blue;
  761. }
  762. .cm-s-ipython span.cm-quote {
  763. color: #090;
  764. }
  765. .cm-s-ipython span.cm-link {
  766. color: #00c;
  767. }
  768. .cm-s-ipython span.cm-error {
  769. color: #f00;
  770. }
  771. .cm-s-ipython span.cm-tab {
  772. background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAYAAAAkuj5RAAAAAXNSR0IArs4c6QAAAGFJREFUSMft1LsRQFAQheHPowAKoACx3IgEKtaEHujDjORSgWTH/ZOdnZOcM/sgk/kFFWY0qV8foQwS4MKBCS3qR6ixBJvElOobYAtivseIE120FaowJPN75GMu8j/LfMwNjh4HUpwg4LUAAAAASUVORK5CYII=);
  773. background-position: right;
  774. background-repeat: no-repeat;
  775. }
  776. div.output_wrapper {
  777. /* this position must be relative to enable descendents to be absolute within it */
  778. position: relative;
  779. /* Old browsers */
  780. display: -webkit-box;
  781. -webkit-box-orient: vertical;
  782. -webkit-box-align: stretch;
  783. display: -moz-box;
  784. -moz-box-orient: vertical;
  785. -moz-box-align: stretch;
  786. display: box;
  787. box-orient: vertical;
  788. box-align: stretch;
  789. /* Modern browsers */
  790. display: flex;
  791. flex-direction: column;
  792. align-items: stretch;
  793. z-index: 1;
  794. }
  795. /* class for the output area when it should be height-limited */
  796. div.output_scroll {
  797. /* ideally, this would be max-height, but FF barfs all over that */
  798. height: 24em;
  799. /* FF needs this *and the wrapper* to specify full width, or it will shrinkwrap */
  800. width: 100%;
  801. overflow: auto;
  802. border-radius: 2px;
  803. -webkit-box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8);
  804. box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8);
  805. display: block;
  806. }
  807. /* output div while it is collapsed */
  808. div.output_collapsed {
  809. margin: 0px;
  810. padding: 0px;
  811. /* Old browsers */
  812. display: -webkit-box;
  813. -webkit-box-orient: vertical;
  814. -webkit-box-align: stretch;
  815. display: -moz-box;
  816. -moz-box-orient: vertical;
  817. -moz-box-align: stretch;
  818. display: box;
  819. box-orient: vertical;
  820. box-align: stretch;
  821. /* Modern browsers */
  822. display: flex;
  823. flex-direction: column;
  824. align-items: stretch;
  825. }
  826. div.out_prompt_overlay {
  827. height: 100%;
  828. padding: 0px 0.4em;
  829. position: absolute;
  830. border-radius: 2px;
  831. }
  832. div.out_prompt_overlay:hover {
  833. /* use inner shadow to get border that is computed the same on WebKit/FF */
  834. -webkit-box-shadow: inset 0 0 1px #000;
  835. box-shadow: inset 0 0 1px #000;
  836. background: rgba(240, 240, 240, 0.5);
  837. }
  838. div.output_prompt {
  839. color: #D84315;
  840. }
  841. /* This class is the outer container of all output sections. */
  842. div.output_area {
  843. padding: 0px;
  844. page-break-inside: avoid;
  845. /* Old browsers */
  846. display: -webkit-box;
  847. -webkit-box-orient: horizontal;
  848. -webkit-box-align: stretch;
  849. display: -moz-box;
  850. -moz-box-orient: horizontal;
  851. -moz-box-align: stretch;
  852. display: box;
  853. box-orient: horizontal;
  854. box-align: stretch;
  855. /* Modern browsers */
  856. display: flex;
  857. flex-direction: row;
  858. align-items: stretch;
  859. }
  860. div.output_area .MathJax_Display {
  861. text-align: left !important;
  862. }
  863. div.output_area
  864. div.output_area
  865. div.output_area img,
  866. div.output_area svg {
  867. max-width: 100%;
  868. height: auto;
  869. }
  870. div.output_area img.unconfined,
  871. div.output_area svg.unconfined {
  872. max-width: none;
  873. }
  874. div.output_area .mglyph > img {
  875. max-width: none;
  876. }
  877. /* This is needed to protect the pre formating from global settings such
  878. as that of bootstrap */
  879. .output {
  880. /* Old browsers */
  881. display: -webkit-box;
  882. -webkit-box-orient: vertical;
  883. -webkit-box-align: stretch;
  884. display: -moz-box;
  885. -moz-box-orient: vertical;
  886. -moz-box-align: stretch;
  887. display: box;
  888. box-orient: vertical;
  889. box-align: stretch;
  890. /* Modern browsers */
  891. display: flex;
  892. flex-direction: column;
  893. align-items: stretch;
  894. }
  895. @media (max-width: 540px) {
  896. div.output_area {
  897. /* Old browsers */
  898. display: -webkit-box;
  899. -webkit-box-orient: vertical;
  900. -webkit-box-align: stretch;
  901. display: -moz-box;
  902. -moz-box-orient: vertical;
  903. -moz-box-align: stretch;
  904. display: box;
  905. box-orient: vertical;
  906. box-align: stretch;
  907. /* Modern browsers */
  908. display: flex;
  909. flex-direction: column;
  910. align-items: stretch;
  911. }
  912. }
  913. div.output_area pre {
  914. margin: 0;
  915. padding: 1px 0 1px 0;
  916. border: 0;
  917. vertical-align: baseline;
  918. color: black;
  919. background-color: transparent;
  920. border-radius: 0;
  921. }
  922. /* This class is for the output subarea inside the output_area and after
  923. the prompt div. */
  924. div.output_subarea {
  925. overflow-x: auto;
  926. padding: 0.4em;
  927. /* Old browsers */
  928. -webkit-box-flex: 1;
  929. -moz-box-flex: 1;
  930. box-flex: 1;
  931. /* Modern browsers */
  932. flex: 1;
  933. max-width: calc(100% - 14ex);
  934. }
  935. div.output_scroll div.output_subarea {
  936. overflow-x: visible;
  937. }
  938. /* The rest of the output_* classes are for special styling of the different
  939. output types */
  940. /* all text output has this class: */
  941. div.output_text {
  942. text-align: left;
  943. color: #000;
  944. /* This has to match that of the the CodeMirror class line-height below */
  945. line-height: 1.21429em;
  946. }
  947. /* stdout/stderr are 'text' as well as 'stream', but execute_result/error are *not* streams */
  948. div.output_stderr {
  949. background: #fdd;
  950. /* very light red background for stderr */
  951. }
  952. div.output_latex {
  953. text-align: left;
  954. }
  955. /* Empty output_javascript divs should have no height */
  956. div.output_javascript:empty {
  957. padding: 0;
  958. }
  959. .js-error {
  960. color: darkred;
  961. }
  962. /* raw_input styles */
  963. div.raw_input_container {
  964. line-height: 1.21429em;
  965. padding-top: 5px;
  966. }
  967. pre.raw_input_prompt {
  968. /* nothing needed here. */
  969. }
  970. input.raw_input {
  971. font-family: monospace;
  972. font-size: inherit;
  973. color: inherit;
  974. width: auto;
  975. /* make sure input baseline aligns with prompt */
  976. vertical-align: baseline;
  977. /* padding + margin = 0.5em between prompt and cursor */
  978. padding: 0em 0.25em;
  979. margin: 0em 0.25em;
  980. }
  981. input.raw_input:focus {
  982. box-shadow: none;
  983. }
  984. p.p-space {
  985. margin-bottom: 10px;
  986. }
  987. div.output_unrecognized {
  988. padding: 5px;
  989. font-weight: bold;
  990. color: red;
  991. }
  992. div.output_unrecognized a {
  993. color: inherit;
  994. text-decoration: none;
  995. }
  996. div.output_unrecognized a:hover {
  997. color: inherit;
  998. text-decoration: none;
  999. }
  1000. .rendered_html {
  1001. color: #000;
  1002. /* any extras will just be numbers: */
  1003. }
  1004. .rendered_html :link {
  1005. text-decoration: underline;
  1006. }
  1007. .rendered_html :visited {
  1008. text-decoration: underline;
  1009. }
  1010. .rendered_html h1:first-child {
  1011. margin-top: 0.538em;
  1012. }
  1013. .rendered_html h2:first-child {
  1014. margin-top: 0.636em;
  1015. }
  1016. .rendered_html h3:first-child {
  1017. margin-top: 0.777em;
  1018. }
  1019. .rendered_html h4:first-child {
  1020. margin-top: 1em;
  1021. }
  1022. .rendered_html h5:first-child {
  1023. margin-top: 1em;
  1024. }
  1025. .rendered_html h6:first-child {
  1026. margin-top: 1em;
  1027. }
  1028. .rendered_html ul:not(.list-inline),
  1029. .rendered_html ol:not(.list-inline) {
  1030. padding-left: 2em;
  1031. }
  1032. .rendered_html * + ul {
  1033. margin-top: 1em;
  1034. }
  1035. .rendered_html * + ol {
  1036. margin-top: 1em;
  1037. }
  1038. .rendered_html pre,
  1039. .rendered_html tr,
  1040. .rendered_html th,
  1041. .rendered_html tbody tr:nth-child(odd) {
  1042. background: #f5f5f5;
  1043. }
  1044. .rendered_html tbody tr:hover {
  1045. background: rgba(66, 165, 245, 0.2);
  1046. }
  1047. .rendered_html * + table {
  1048. margin-top: 1em;
  1049. }
  1050. .rendered_html * + p {
  1051. margin-top: 1em;
  1052. }
  1053. .rendered_html * + img {
  1054. margin-top: 1em;
  1055. }
  1056. .rendered_html img,
  1057. .rendered_html img.unconfined,
  1058. .rendered_html * + .alert {
  1059. margin-top: 1em;
  1060. }
  1061. [dir="rtl"]
  1062. div.text_cell {
  1063. /* Old browsers */
  1064. display: -webkit-box;
  1065. -webkit-box-orient: horizontal;
  1066. -webkit-box-align: stretch;
  1067. display: -moz-box;
  1068. -moz-box-orient: horizontal;
  1069. -moz-box-align: stretch;
  1070. display: box;
  1071. box-orient: horizontal;
  1072. box-align: stretch;
  1073. /* Modern browsers */
  1074. display: flex;
  1075. flex-direction: row;
  1076. align-items: stretch;
  1077. }
  1078. @media (max-width: 540px) {
  1079. div.text_cell > div.prompt {
  1080. display: none;
  1081. }
  1082. }
  1083. div.text_cell_render {
  1084. /*font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;*/
  1085. outline: none;
  1086. resize: none;
  1087. width: inherit;
  1088. border-style: none;
  1089. padding: 0.5em 0.5em 0.5em 0.4em;
  1090. color: #000;
  1091. box-sizing: border-box;
  1092. -moz-box-sizing: border-box;
  1093. -webkit-box-sizing: border-box;
  1094. }
  1095. a.anchor-link:link {
  1096. text-decoration: none;
  1097. padding: 0px 20px;
  1098. visibility: hidden;
  1099. }
  1100. h1:hover .anchor-link,
  1101. h2:hover .anchor-link,
  1102. h3:hover .anchor-link,
  1103. h4:hover .anchor-link,
  1104. h5:hover .anchor-link,
  1105. h6:hover .anchor-link {
  1106. visibility: visible;
  1107. }
  1108. .text_cell.rendered .input_area {
  1109. display: none;
  1110. }
  1111. .text_cell.rendered
  1112. .text_cell.rendered .rendered_html tr,
  1113. .text_cell.rendered .rendered_html th,
  1114. .text_cell.rendered
  1115. .text_cell.unrendered .text_cell_render {
  1116. display: none;
  1117. }
  1118. .text_cell .dropzone .input_area {
  1119. border: 2px dashed #bababa;
  1120. margin: -1px;
  1121. }
  1122. .cm-header-1,
  1123. .cm-header-2,
  1124. .cm-header-3,
  1125. .cm-header-4,
  1126. .cm-header-5,
  1127. .cm-header-6 {
  1128. font-weight: bold;
  1129. font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  1130. }
  1131. .cm-header-1 {
  1132. font-size: 185.7%;
  1133. }
  1134. .cm-header-2 {
  1135. font-size: 157.1%;
  1136. }
  1137. .cm-header-3 {
  1138. font-size: 128.6%;
  1139. }
  1140. .cm-header-4 {
  1141. font-size: 110%;
  1142. }
  1143. .cm-header-5 {
  1144. font-size: 100%;
  1145. font-style: italic;
  1146. }
  1147. .cm-header-6 {
  1148. font-size: 100%;
  1149. font-style: italic;
  1150. }
  1151. </style>
  1152. <style type="text/css">.highlight-ipynb .hll { background-color: #ffffcc }
  1153. .highlight-ipynb { background: #f8f8f8; }
  1154. .highlight-ipynb .c { color: #408080; font-style: italic } /* Comment */
  1155. .highlight-ipynb .err { border: 1px solid #FF0000 } /* Error */
  1156. .highlight-ipynb .k { color: #008000; font-weight: bold } /* Keyword */
  1157. .highlight-ipynb .o { color: #666666 } /* Operator */
  1158. .highlight-ipynb .ch { color: #408080; font-style: italic } /* Comment.Hashbang */
  1159. .highlight-ipynb .cm { color: #408080; font-style: italic } /* Comment.Multiline */
  1160. .highlight-ipynb .cp { color: #BC7A00 } /* Comment.Preproc */
  1161. .highlight-ipynb .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */
  1162. .highlight-ipynb .c1 { color: #408080; font-style: italic } /* Comment.Single */
  1163. .highlight-ipynb .cs { color: #408080; font-style: italic } /* Comment.Special */
  1164. .highlight-ipynb .gd { color: #A00000 } /* Generic.Deleted */
  1165. .highlight-ipynb .ge { font-style: italic } /* Generic.Emph */
  1166. .highlight-ipynb .gr { color: #FF0000 } /* Generic.Error */
  1167. .highlight-ipynb .gh { color: #000080; font-weight: bold } /* Generic.Heading */
  1168. .highlight-ipynb .gi { color: #00A000 } /* Generic.Inserted */
  1169. .highlight-ipynb .go { color: #888888 } /* Generic.Output */
  1170. .highlight-ipynb .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
  1171. .highlight-ipynb .gs { font-weight: bold } /* Generic.Strong */
  1172. .highlight-ipynb .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
  1173. .highlight-ipynb .gt { color: #0044DD } /* Generic.Traceback */
  1174. .highlight-ipynb .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
  1175. .highlight-ipynb .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
  1176. .highlight-ipynb .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
  1177. .highlight-ipynb .kp { color: #008000 } /* Keyword.Pseudo */
  1178. .highlight-ipynb .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
  1179. .highlight-ipynb .kt { color: #B00040 } /* Keyword.Type */
  1180. .highlight-ipynb .m { color: #666666 } /* Literal.Number */
  1181. .highlight-ipynb .s { color: #BA2121 } /* Literal.String */
  1182. .highlight-ipynb .na { color: #7D9029 } /* Name.Attribute */
  1183. .highlight-ipynb .nb { color: #008000 } /* Name.Builtin */
  1184. .highlight-ipynb .nc { color: #0000FF; font-weight: bold } /* Name.Class */
  1185. .highlight-ipynb .no { color: #880000 } /* Name.Constant */
  1186. .highlight-ipynb .nd { color: #AA22FF } /* Name.Decorator */
  1187. .highlight-ipynb .ni { color: #999999; font-weight: bold } /* Name.Entity */
  1188. .highlight-ipynb .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
  1189. .highlight-ipynb .nf { color: #0000FF } /* Name.Function */
  1190. .highlight-ipynb .nl { color: #A0A000 } /* Name.Label */
  1191. .highlight-ipynb .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
  1192. .highlight-ipynb .nt { color: #008000; font-weight: bold } /* Name.Tag */
  1193. .highlight-ipynb .nv { color: #19177C } /* Name.Variable */
  1194. .highlight-ipynb .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
  1195. .highlight-ipynb .w { color: #bbbbbb } /* Text.Whitespace */
  1196. .highlight-ipynb .mb { color: #666666 } /* Literal.Number.Bin */
  1197. .highlight-ipynb .mf { color: #666666 } /* Literal.Number.Float */
  1198. .highlight-ipynb .mh { color: #666666 } /* Literal.Number.Hex */
  1199. .highlight-ipynb .mi { color: #666666 } /* Literal.Number.Integer */
  1200. .highlight-ipynb .mo { color: #666666 } /* Literal.Number.Oct */
  1201. .highlight-ipynb .sa { color: #BA2121 } /* Literal.String.Affix */
  1202. .highlight-ipynb .sb { color: #BA2121 } /* Literal.String.Backtick */
  1203. .highlight-ipynb .sc { color: #BA2121 } /* Literal.String.Char */
  1204. .highlight-ipynb .dl { color: #BA2121 } /* Literal.String.Delimiter */
  1205. .highlight-ipynb .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
  1206. .highlight-ipynb .s2 { color: #BA2121 } /* Literal.String.Double */
  1207. .highlight-ipynb .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
  1208. .highlight-ipynb .sh { color: #BA2121 } /* Literal.String.Heredoc */
  1209. .highlight-ipynb .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
  1210. .highlight-ipynb .sx { color: #008000 } /* Literal.String.Other */
  1211. .highlight-ipynb .sr { color: #BB6688 } /* Literal.String.Regex */
  1212. .highlight-ipynb .s1 { color: #BA2121 } /* Literal.String.Single */
  1213. .highlight-ipynb .ss { color: #19177C } /* Literal.String.Symbol */
  1214. .highlight-ipynb .bp { color: #008000 } /* Name.Builtin.Pseudo */
  1215. .highlight-ipynb .fm { color: #0000FF } /* Name.Function.Magic */
  1216. .highlight-ipynb .vc { color: #19177C } /* Name.Variable.Class */
  1217. .highlight-ipynb .vg { color: #19177C } /* Name.Variable.Global */
  1218. .highlight-ipynb .vi { color: #19177C } /* Name.Variable.Instance */
  1219. .highlight-ipynb .vm { color: #19177C } /* Name.Variable.Magic */
  1220. .highlight-ipynb .il { color: #666666 } /* Literal.Number.Integer.Long */</style><style type="text/css">
  1221. .rendered_html a{text-decoration:inherit !important}.rendered_html :link{text-decoration:inherit !important}.rendered_html :visited{text-decoration:inherit !important}pre code{background-color:inherit !important}.highlight{color:#000000}.highlight code{color:#000000}.highlight .n{color:#333333}.highlight .p{color:#000000}.text_cell .prompt{display:none !important}div.input_prompt{padding:0.2em 0.4em}div.output_prompt{padding:0.4em}.text_cell{margin:0 !important;padding:0 !important;border:none !important}.text_cell_render{margin:0 !important;padding:0 !important;border:none !important}.rendered_html *+p{margin-top:inherit !important}.anchor-link{display:none !important}.code_cell{margin:0 !important;padding:5px 0 !important;border:none !important}.celltoolbar{border:thin solid #CFCFCF;border-bottom:none;background:#EEE;border-radius:2px 2px 0px 0px;width:100%;height:29px;padding-right:4px;box-orient:horizontal;box-align:stretch;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;box-pack:end;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;display:-webkit-flex}.celltoolbar .tags_button_container{display:-webkit-box;display:-ms-flexbox;display:flex}.celltoolbar .tags_button_container .tag-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;overflow:hidden;position:relative}.celltoolbar .tags_button_container .tag-container .cell-tag{background-color:#fff;white-space:nowrap;margin:3px 4px;padding:0 4px;border-radius:1px;border:1px solid #ccc;-webkit-box-shadow:none;box-shadow:none;width:inherit;font-size:13px;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;height:22px;line-height:22px;display:inline-block}div.input_area>div.highlight{margin:0.25em 0.4em !important}.code_cell pre{font-size:12px !important}.output_html table.dataframe{font-family:Arial, sans-serif;font-size:13px;line-height:20px}.output_html table.dataframe th,td{padding:4px;text-align:left}.bk-plot-wrapper tbody tr{background:none !important}.bk-plot-wrapper tbody tr:hover{background:none !important}
  1222. /*# sourceMappingURL=jupyter-fixes.min.css.map */
  1223. </style>
  1224. <script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script>
  1225. <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
  1226. <!-- Loading mathjax macro -->
  1227. <!-- Load mathjax -->
  1228. <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-AMS_HTML"></script>
  1229. <!-- MathJax configuration -->
  1230. <script type="text/x-mathjax-config">
  1231. MathJax.Hub.Config({
  1232. tex2jax: {
  1233. inlineMath: [ ['$','$'], ["\\(","\\)"] ],
  1234. displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
  1235. processEscapes: true,
  1236. processEnvironments: true
  1237. },
  1238. // Center justify equations in code and markdown cells. Elsewhere
  1239. // we use CSS to left justify single line equations in code cells.
  1240. displayAlign: 'center',
  1241. "HTML-CSS": {
  1242. styles: {'.MathJax_Display': {"margin": 0}},
  1243. linebreaks: { automatic: true }
  1244. }
  1245. });
  1246. </script>
  1247. <!-- End of mathjax configuration -->
  1248. <div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt">
  1249. </div><div class="inner_cell">
  1250. <div class="text_cell_render border-box-sizing rendered_html">
  1251. <h1 id="gallery">Gallery<a class="anchor-link" href="#Gallery">&#182;</a></h1>
  1252. </div>
  1253. </div>
  1254. </div>
  1255. <div class="cell border-box-sizing code_cell rendered">
  1256. <div class="input">
  1257. <div class="prompt input_prompt">In&nbsp;[1]:</div>
  1258. <div class="inner_cell">
  1259. <div class="input_area">
  1260. <div class=" highlight highlight-ipynb hl-python"><pre><span></span><span class="o">%</span><span class="n">matplotlib</span> <span class="n">widget</span>
  1261. </pre></div>
  1262. </div>
  1263. </div>
  1264. </div>
  1265. </div>
  1266. <div class="cell border-box-sizing code_cell rendered">
  1267. <div class="input">
  1268. <div class="prompt input_prompt">In&nbsp;[2]:</div>
  1269. <div class="inner_cell">
  1270. <div class="input_area">
  1271. <div class=" highlight highlight-ipynb hl-python"><pre><span></span><span class="kn">from</span> <span class="nn">ipywidgets</span> <span class="kn">import</span> <span class="n">HBox</span><span class="p">,</span> <span class="n">VBox</span><span class="p">,</span> <span class="n">Output</span><span class="p">,</span> <span class="n">Label</span>
  1272. </pre></div>
  1273. </div>
  1274. </div>
  1275. </div>
  1276. </div>
  1277. <div class="cell border-box-sizing code_cell rendered">
  1278. <div class="input">
  1279. <div class="prompt input_prompt">In&nbsp;[3]:</div>
  1280. <div class="inner_cell">
  1281. <div class="input_area">
  1282. <div class=" highlight highlight-ipynb hl-python"><pre><span></span><span class="n">url</span> <span class="o">=</span> <span class="s2">&quot;https://raw.githubusercontent.com/gbrault/jupytersketches/master/&quot;</span>
  1283. </pre></div>
  1284. </div>
  1285. </div>
  1286. </div>
  1287. </div>
  1288. <div class="cell border-box-sizing code_cell rendered">
  1289. <div class="input">
  1290. <div class="prompt input_prompt">In&nbsp;[4]:</div>
  1291. <div class="inner_cell">
  1292. <div class="input_area">
  1293. <div class=" highlight highlight-ipynb hl-python"><pre><span></span><span class="n">gallery</span> <span class="o">=</span> <span class="n">Output</span><span class="p">()</span>
  1294. <span class="n">gallery</span>
  1295. </pre></div>
  1296. </div>
  1297. </div>
  1298. </div>
  1299. <div class="output_wrapper">
  1300. <div class="output">
  1301. <div class="output_area">
  1302. <div class="prompt"></div>
  1303. <div id="2356cad6-a5d1-47d5-8c07-cec287fbadea"></div>
  1304. <div class="output_subarea output_widget_view ">
  1305. <script type="text/javascript">
  1306. var element = $('#2356cad6-a5d1-47d5-8c07-cec287fbadea');
  1307. </script>
  1308. <script type="application/vnd.jupyter.widget-view+json">
  1309. {"version_major": 2, "version_minor": 0, "model_id": "52ea7cdf6d824834862f556af8859788"}
  1310. </script>
  1311. </div>
  1312. </div>
  1313. </div>
  1314. </div>
  1315. </div>
  1316. <div class="cell border-box-sizing code_cell rendered">
  1317. <div class="input">
  1318. <div class="prompt input_prompt">In&nbsp;[5]:</div>
  1319. <div class="inner_cell">
  1320. <div class="input_area">
  1321. <div class=" highlight highlight-ipynb hl-python"><pre><span></span><span class="kn">from</span> <span class="nn">pysketcher</span> <span class="kn">import</span> <span class="o">*</span>
  1322. </pre></div>
  1323. </div>
  1324. </div>
  1325. </div>
  1326. </div>
  1327. <div class="cell border-box-sizing code_cell rendered">
  1328. <div class="input">
  1329. <div class="prompt input_prompt">In&nbsp;[6]:</div>
  1330. <div class="inner_cell">
  1331. <div class="input_area">
  1332. <div class=" highlight highlight-ipynb hl-python"><pre><span></span><span class="kn">import</span> <span class="nn">time</span>
  1333. </pre></div>
  1334. </div>
  1335. </div>
  1336. </div>
  1337. </div>
  1338. <div class="cell border-box-sizing code_cell rendered">
  1339. <div class="input">
  1340. <div class="prompt input_prompt">In&nbsp;[7]:</div>
  1341. <div class="inner_cell">
  1342. <div class="input_area">
  1343. <div class=" highlight highlight-ipynb hl-python"><pre><span></span><span class="kn">from</span> <span class="nn">IPython.display</span> <span class="kn">import</span> <span class="n">HTML</span><span class="p">,</span> <span class="n">SVG</span><span class="p">,</span> <span class="n">display</span><span class="p">,</span> <span class="n">clear_output</span>
  1344. </pre></div>
  1345. </div>
  1346. </div>
  1347. </div>
  1348. </div>
  1349. <div class="cell border-box-sizing code_cell rendered">
  1350. <div class="input">
  1351. <div class="prompt input_prompt">In&nbsp;[8]:</div>
  1352. <div class="inner_cell">
  1353. <div class="input_area">
  1354. <div class=" highlight highlight-ipynb hl-python"><pre><span></span><span class="n">files</span> <span class="o">=</span> <span class="p">[(</span><span class="s2">&quot;dryfriction&quot;</span><span class="p">,</span><span class="s2">&quot;friction&quot;</span><span class="p">),(</span><span class="s2">&quot;pendulum&quot;</span><span class="p">,</span><span class="s2">&quot;pendulum&quot;</span><span class="p">),</span>
  1355. <span class="p">(</span><span class="s2">&quot;car&quot;</span><span class="p">,</span><span class="s2">&quot;car&quot;</span><span class="p">),(</span><span class="s2">&quot;springmass&quot;</span><span class="p">,</span><span class="s2">&quot;springmass&quot;</span><span class="p">),</span>
  1356. <span class="p">(</span><span class="s2">&quot;springdashpotmass&quot;</span><span class="p">,</span><span class="s2">&quot;springdashpotmass&quot;</span><span class="p">),(</span><span class="s2">&quot;jet_pump&quot;</span><span class="p">,</span><span class="s2">&quot;jet_pump&quot;</span><span class="p">)]</span>
  1357. </pre></div>
  1358. </div>
  1359. </div>
  1360. </div>
  1361. </div>
  1362. <div class="cell border-box-sizing code_cell rendered">
  1363. <div class="input">
  1364. <div class="prompt input_prompt">In&nbsp;[9]:</div>
  1365. <div class="inner_cell">
  1366. <div class="input_area">
  1367. <div class=" highlight highlight-ipynb hl-python"><pre><span></span><span class="n">i</span> <span class="o">=</span> <span class="mi">0</span>
  1368. <span class="n">horiz</span> <span class="o">=</span> <span class="p">[]</span>
  1369. <span class="n">vert</span> <span class="o">=</span> <span class="p">[]</span>
  1370. <span class="n">outputs</span> <span class="o">=</span> <span class="p">[</span><span class="n">Output</span><span class="p">()</span> <span class="k">for</span> <span class="n">file</span> <span class="ow">in</span> <span class="n">files</span><span class="p">]</span>
  1371. <span class="k">for</span> <span class="n">output</span> <span class="ow">in</span> <span class="n">outputs</span><span class="p">:</span>
  1372. <span class="k">if</span> <span class="n">i</span> <span class="o">==</span> <span class="mi">3</span><span class="p">:</span>
  1373. <span class="n">vert</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">HBox</span><span class="p">(</span><span class="n">horiz</span><span class="p">))</span>
  1374. <span class="n">horiz</span> <span class="o">=</span> <span class="p">[</span><span class="n">output</span><span class="p">]</span>
  1375. <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span>
  1376. <span class="k">else</span><span class="p">:</span>
  1377. <span class="n">i</span> <span class="o">+=</span> <span class="mi">1</span>
  1378. <span class="n">horiz</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">output</span><span class="p">)</span>
  1379. <span class="k">if</span> <span class="n">i</span> <span class="o">&gt;=</span> <span class="mi">0</span> <span class="ow">and</span> <span class="n">i</span> <span class="o">&lt;</span> <span class="mi">3</span><span class="p">:</span>
  1380. <span class="n">vert</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">HBox</span><span class="p">(</span><span class="n">horiz</span><span class="p">))</span>
  1381. <span class="k">with</span> <span class="n">gallery</span><span class="p">:</span>
  1382. <span class="n">display</span><span class="p">(</span><span class="n">VBox</span><span class="p">(</span><span class="n">vert</span><span class="p">))</span>
  1383. <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span>
  1384. <span class="k">for</span> <span class="n">file</span> <span class="ow">in</span> <span class="n">files</span><span class="p">:</span>
  1385. <span class="n">sketch</span> <span class="o">=</span> <span class="n">Sketch</span><span class="p">({})</span>
  1386. <span class="n">sketch</span><span class="o">.</span><span class="n">url2Sketch</span><span class="p">(</span><span class="n">url</span> <span class="o">+</span> <span class="n">file</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span><span class="s2">&quot;.yml&quot;</span><span class="p">)</span>
  1387. <span class="n">drawing_tool</span><span class="o">.</span><span class="n">erase</span><span class="p">()</span>
  1388. <span class="n">sketch</span><span class="o">.</span><span class="n">container</span><span class="p">[</span><span class="n">file</span><span class="p">[</span><span class="mi">1</span><span class="p">]]</span><span class="o">.</span><span class="n">draw</span><span class="p">()</span>
  1389. <span class="n">link</span> <span class="o">=</span> <span class="sa">f</span><span class="s2">&quot;&lt;a target=</span><span class="se">\&quot;</span><span class="s2">_blank</span><span class="se">\&quot;</span><span class="s2"> href=</span><span class="se">\&quot;</span><span class="si">{</span><span class="n">url</span> <span class="o">+</span> <span class="n">file</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">+</span><span class="s1">&#39;.yml&#39;</span><span class="si">}</span><span class="se">\&quot;</span><span class="s2">&gt;&lt;h3&gt;</span><span class="si">{</span><span class="n">file</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="si">}</span><span class="s2">&lt;/h3&gt;&lt;/a&gt;&quot;</span>
  1390. <span class="k">with</span> <span class="n">outputs</span><span class="p">[</span><span class="n">i</span><span class="p">]:</span>
  1391. <span class="n">clear_output</span><span class="p">(</span><span class="n">wait</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
  1392. <span class="n">display</span><span class="p">(</span><span class="n">HTML</span><span class="p">(</span><span class="n">link</span><span class="p">),</span>
  1393. <span class="n">SVG</span><span class="p">(</span><span class="n">Sketch</span><span class="o">.</span><span class="n">matplotlib2SVG</span><span class="p">()))</span>
  1394. <span class="n">i</span> <span class="o">+=</span> <span class="mi">1</span>
  1395. <span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="mf">0.1</span><span class="p">)</span>
  1396. </pre></div>
  1397. </div>
  1398. </div>
  1399. </div>
  1400. </div>
  1401. <div class="cell border-box-sizing code_cell rendered">
  1402. <div class="input">
  1403. <div class="prompt input_prompt">In&nbsp;[&nbsp;]:</div>
  1404. <div class="inner_cell">
  1405. <div class="input_area">
  1406. <div class=" highlight highlight-ipynb hl-python"><pre><span></span>
  1407. </pre></div>
  1408. </div>
  1409. </div>
  1410. </div>
  1411. </div>
  1412. </div>
  1413. </article>
  1414. </div>
  1415. </div>
  1416. </main>
  1417. <footer class="md-footer">
  1418. <div class="md-footer-nav">
  1419. <nav class="md-footer-nav__inner md-grid" aria-label="Footer">
  1420. <a href="../../gallerydoc/" title="Gallery" class="md-footer-nav__link md-footer-nav__link--prev" rel="prev">
  1421. <div class="md-footer-nav__button md-icon">
  1422. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
  1423. </div>
  1424. <div class="md-footer-nav__title">
  1425. <div class="md-ellipsis">
  1426. <span class="md-footer-nav__direction">
  1427. Previous
  1428. </span>
  1429. Gallery
  1430. </div>
  1431. </div>
  1432. </a>
  1433. </nav>
  1434. </div>
  1435. <div class="md-footer-meta md-typeset">
  1436. <div class="md-footer-meta__inner md-grid">
  1437. <div class="md-footer-copyright">
  1438. Made with
  1439. <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
  1440. Material for MkDocs
  1441. </a>
  1442. </div>
  1443. </div>
  1444. </div>
  1445. </footer>
  1446. </div>
  1447. <script src="../../assets/javascripts/vendor.c3dc8c49.min.js"></script>
  1448. <script src="../../assets/javascripts/bundle.f9edbbd5.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
  1449. <script>
  1450. app = initialize({
  1451. base: "../..",
  1452. features: [],
  1453. search: Object.assign({
  1454. worker: "../../assets/javascripts/worker/search.8e2cddea.min.js"
  1455. }, typeof search !== "undefined" && search)
  1456. })
  1457. </script>
  1458. <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js?config=TeX-MML-AM_CHTML"></script>
  1459. </body>
  1460. </html>