1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147
|
<!DOCTYPE html>
<html>
<!-- Created by GNU Texinfo 7.1.1, https://www.gnu.org/software/texinfo/ -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Jupyter Notebooks (GNU Octave (version 10.3.0))</title>
<meta name="description" content="Jupyter Notebooks (GNU Octave (version 10.3.0))">
<meta name="keywords" content="Jupyter Notebooks (GNU Octave (version 10.3.0))">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta name="viewport" content="width=device-width,initial-scale=1">
<link href="index.html" rel="start" title="Top">
<link href="Concept-Index.html" rel="index" title="Concept Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Script-Files.html" rel="up" title="Script Files">
<link href="Publishing-Markup.html" rel="prev" title="Publishing Markup">
<style type="text/css">
<!--
a.copiable-link {visibility: hidden; text-decoration: none; line-height: 0em}
div.example {margin-left: 3.2em}
span:hover a.copiable-link {visibility: visible}
strong.def-name {font-family: monospace; font-weight: bold; font-size: larger}
ul.mark-bullet {list-style-type: disc}
ul.mark-minus {list-style-type: "\2212"}
-->
</style>
<link rel="stylesheet" type="text/css" href="octave.css">
</head>
<body lang="en">
<div class="subsection-level-extent" id="Jupyter-Notebooks">
<div class="nav-panel">
<p>
Previous: <a href="Publishing-Markup.html" accesskey="p" rel="prev">Publishing Markup</a>, Up: <a href="Script-Files.html" accesskey="u" rel="up">Script Files</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<h4 class="subsection" id="Jupyter-Notebooks-1"><span>11.11.3 Jupyter Notebooks<a class="copiable-link" href="#Jupyter-Notebooks-1"> ¶</a></span></h4>
<a class="index-entry-id" id="index-Jupyter-Notebooks"></a>
<p>Jupyter notebooks are one popular technique for displaying code, text, and
graphical output together in a comprehensive manner. Octave can publish
results to a Jupyter notebook with the function <code class="code">jupyter_notebook</code>.
</p>
<a class="anchor" id="XREFjupyter_005fnotebook"></a><span style="display:block; margin-top:-4.5ex;"> </span>
<dl class="first-deftypefn">
<dt class="deftypefn" id="index-jupyter_005fnotebook"><span><code class="def-type"><var class="var">notebook</var> =</code> <strong class="def-name">jupyter_notebook</strong> <code class="def-code-arguments">(<var class="var">notebook_filename</var>)</code><a class="copiable-link" href="#index-jupyter_005fnotebook"> ¶</a></span></dt>
<dt class="deftypefnx def-cmd-deftypefn" id="index-jupyter_005fnotebook-1"><span><code class="def-type"><var class="var">notebook</var> =</code> <strong class="def-name">jupyter_notebook</strong> <code class="def-code-arguments">(<var class="var">notebook_filename</var>, <var class="var">options</var>)</code><a class="copiable-link" href="#index-jupyter_005fnotebook-1"> ¶</a></span></dt>
<dd>
<p>Run and fill the Jupyter Notebook in file <var class="var">notebook_filename</var> from
within GNU Octave.
</p>
<p>Both text and graphical Octave outputs are supported.
</p>
<p>This class has a public property <code class="code">notebook</code> which is a structure
representing the JSON-decoded Jupyter Notebook. This property is
intentionally public to enable advanced notebook manipulations.
</p>
<p>Note: Jupyter Notebook versions (<code class="code">nbformat</code>) lower than 4.0 are not
supported.
</p>
<p>The optional second argument <var class="var">options</var> is a struct with fields:
</p>
<ul class="itemize mark-bullet">
<li><code class="code">tmpdir</code> to set the temporary working directory.
</li></ul>
<p><code class="code">%plot</code> magic is supported with the following settings:
</p>
<ul class="itemize mark-bullet">
<li>"<code class="code">%plot -f <format></code>" or "<code class="code">%plot --format <format></code>": specifies
the image storage format. Supported formats are:
<ul class="itemize mark-minus">
<li>PNG (default)
</li><li>SVG
(Note: If SVG images do not appear in the notebook, it is most likely
related to Jupyter Notebook security mechanisms and explicitly "trusting"
them will be necessary).
</li><li>JPG
</li></ul>
</li><li>"<code class="code">%plot -r <number></code>" or "<code class="code">%plot --resolution <number></code>":
specifies the image resolution.
</li><li>"<code class="code">%plot -w <number></code>" or "<code class="code">%plot --width <number></code>":
specifies the image width.
</li><li>"<code class="code">%plot -h <number></code>" or "<code class="code">%plot --height <number></code>":
specifies the image height.
</li></ul>
<p>Examples:
</p>
<div class="example">
<div class="group"><pre class="example-preformatted">## Run all cells and generate the filled notebook
## Instantiate an object from a notebook file
notebook = jupyter_notebook ("myNotebook.ipynb");
## Run the code and embed the results in the <code class="code">notebook</code> property
notebook.run_all ();
## Generate a new notebook by overwriting the original notebook
notebook.generate_notebook ("myNotebook.ipynb");
</pre></div><pre class="example-preformatted">
</pre><div class="group"><pre class="example-preformatted">## Run just the second cell and generate the filled notebook
## Instantiate an object from a notebook file
notebook = jupyter_notebook ("myNotebook.ipynb");
## Run the code and embed the results in the <code class="code">notebook</code> property
notebook.run (2)
## Generate a new notebook in a new file
notebook.generate_notebook ("myNewNotebook.ipynb");
</pre></div><pre class="example-preformatted">
</pre><div class="group"><pre class="example-preformatted">## Generate an Octave script from a notebook
## Instantiate an object from a notebook file
notebook = jupyter_notebook ("myNotebook.ipynb");
## Generate the Octave script
notebook.generate_octave_script ("jup_script.m");
</pre></div></div>
<p><strong class="strong">See also:</strong> <a class="ref" href="JSON-data-encoding_002fdecoding.html#XREFjsondecode">jsondecode</a>, <a class="ref" href="JSON-data-encoding_002fdecoding.html#XREFjsonencode">jsonencode</a>.
</p></dd></dl>
</div>
<hr>
<div class="nav-panel">
<p>
Previous: <a href="Publishing-Markup.html">Publishing Markup</a>, Up: <a href="Script-Files.html">Script Files</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html" title="Index" rel="index">Index</a>]</p>
</div>
</body>
</html>
|