Commit bc0b5b00 authored by Mathieu Pouit's avatar Mathieu Pouit

module2/exo1/toy_document_orgmode_python_fr.org modifié et gén

parent 708fe476
module2/exo1/cosxsx.png

19 KB | W: | H:

module2/exo1/cosxsx.png

21.9 KB | W: | H:

module2/exo1/cosxsx.png
module2/exo1/cosxsx.png
module2/exo1/cosxsx.png
module2/exo1/cosxsx.png
  • 2-up
  • Swipe
  • Onion skin
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
<head>
<!-- 2020-11-14 sam. 21:04 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Votre titre</title>
<meta name="generator" content="Org mode" />
<meta name="author" content="Votre nom" />
<style type="text/css">
<!--/*--><![CDATA[/*><!--*/
.title { text-align: center;
margin-bottom: .2em; }
.subtitle { text-align: center;
font-size: medium;
font-weight: bold;
margin-top:0; }
.todo { font-family: monospace; color: red; }
.done { font-family: monospace; color: green; }
.priority { font-family: monospace; color: orange; }
.tag { background-color: #eee; font-family: monospace;
padding: 2px; font-size: 80%; font-weight: normal; }
.timestamp { color: #bebebe; }
.timestamp-kwd { color: #5f9ea0; }
.org-right { margin-left: auto; margin-right: 0px; text-align: right; }
.org-left { margin-left: 0px; margin-right: auto; text-align: left; }
.org-center { margin-left: auto; margin-right: auto; text-align: center; }
.underline { text-decoration: underline; }
#postamble p, #preamble p { font-size: 90%; margin: .2em; }
p.verse { margin-left: 3%; }
pre {
border: 1px solid #ccc;
box-shadow: 3px 3px 3px #eee;
padding: 8pt;
font-family: monospace;
overflow: auto;
margin: 1.2em;
}
pre.src {
position: relative;
overflow: visible;
padding-top: 1.2em;
}
pre.src:before {
display: none;
position: absolute;
background-color: white;
top: -10px;
right: 10px;
padding: 3px;
border: 1px solid black;
}
pre.src:hover:before { display: inline;}
/* Languages per Org manual */
pre.src-asymptote:before { content: 'Asymptote'; }
pre.src-awk:before { content: 'Awk'; }
pre.src-C:before { content: 'C'; }
/* pre.src-C++ doesn't work in CSS */
pre.src-clojure:before { content: 'Clojure'; }
pre.src-css:before { content: 'CSS'; }
pre.src-D:before { content: 'D'; }
pre.src-ditaa:before { content: 'ditaa'; }
pre.src-dot:before { content: 'Graphviz'; }
pre.src-calc:before { content: 'Emacs Calc'; }
pre.src-emacs-lisp:before { content: 'Emacs Lisp'; }
pre.src-fortran:before { content: 'Fortran'; }
pre.src-gnuplot:before { content: 'gnuplot'; }
pre.src-haskell:before { content: 'Haskell'; }
pre.src-hledger:before { content: 'hledger'; }
pre.src-java:before { content: 'Java'; }
pre.src-js:before { content: 'Javascript'; }
pre.src-latex:before { content: 'LaTeX'; }
pre.src-ledger:before { content: 'Ledger'; }
pre.src-lisp:before { content: 'Lisp'; }
pre.src-lilypond:before { content: 'Lilypond'; }
pre.src-lua:before { content: 'Lua'; }
pre.src-matlab:before { content: 'MATLAB'; }
pre.src-mscgen:before { content: 'Mscgen'; }
pre.src-ocaml:before { content: 'Objective Caml'; }
pre.src-octave:before { content: 'Octave'; }
pre.src-org:before { content: 'Org mode'; }
pre.src-oz:before { content: 'OZ'; }
pre.src-plantuml:before { content: 'Plantuml'; }
pre.src-processing:before { content: 'Processing.js'; }
pre.src-python:before { content: 'Python'; }
pre.src-R:before { content: 'R'; }
pre.src-ruby:before { content: 'Ruby'; }
pre.src-sass:before { content: 'Sass'; }
pre.src-scheme:before { content: 'Scheme'; }
pre.src-screen:before { content: 'Gnu Screen'; }
pre.src-sed:before { content: 'Sed'; }
pre.src-sh:before { content: 'shell'; }
pre.src-sql:before { content: 'SQL'; }
pre.src-sqlite:before { content: 'SQLite'; }
/* additional languages in org.el's org-babel-load-languages alist */
pre.src-forth:before { content: 'Forth'; }
pre.src-io:before { content: 'IO'; }
pre.src-J:before { content: 'J'; }
pre.src-makefile:before { content: 'Makefile'; }
pre.src-maxima:before { content: 'Maxima'; }
pre.src-perl:before { content: 'Perl'; }
pre.src-picolisp:before { content: 'Pico Lisp'; }
pre.src-scala:before { content: 'Scala'; }
pre.src-shell:before { content: 'Shell Script'; }
pre.src-ebnf2ps:before { content: 'ebfn2ps'; }
/* additional language identifiers per "defun org-babel-execute"
in ob-*.el */
pre.src-cpp:before { content: 'C++'; }
pre.src-abc:before { content: 'ABC'; }
pre.src-coq:before { content: 'Coq'; }
pre.src-groovy:before { content: 'Groovy'; }
/* additional language identifiers from org-babel-shell-names in
ob-shell.el: ob-shell is the only babel language using a lambda to put
the execution function name together. */
pre.src-bash:before { content: 'bash'; }
pre.src-csh:before { content: 'csh'; }
pre.src-ash:before { content: 'ash'; }
pre.src-dash:before { content: 'dash'; }
pre.src-ksh:before { content: 'ksh'; }
pre.src-mksh:before { content: 'mksh'; }
pre.src-posh:before { content: 'posh'; }
/* Additional Emacs modes also supported by the LaTeX listings package */
pre.src-ada:before { content: 'Ada'; }
pre.src-asm:before { content: 'Assembler'; }
pre.src-caml:before { content: 'Caml'; }
pre.src-delphi:before { content: 'Delphi'; }
pre.src-html:before { content: 'HTML'; }
pre.src-idl:before { content: 'IDL'; }
pre.src-mercury:before { content: 'Mercury'; }
pre.src-metapost:before { content: 'MetaPost'; }
pre.src-modula-2:before { content: 'Modula-2'; }
pre.src-pascal:before { content: 'Pascal'; }
pre.src-ps:before { content: 'PostScript'; }
pre.src-prolog:before { content: 'Prolog'; }
pre.src-simula:before { content: 'Simula'; }
pre.src-tcl:before { content: 'tcl'; }
pre.src-tex:before { content: 'TeX'; }
pre.src-plain-tex:before { content: 'Plain TeX'; }
pre.src-verilog:before { content: 'Verilog'; }
pre.src-vhdl:before { content: 'VHDL'; }
pre.src-xml:before { content: 'XML'; }
pre.src-nxml:before { content: 'XML'; }
/* add a generic configuration mode; LaTeX export needs an additional
(add-to-list 'org-latex-listings-langs '(conf " ")) in .emacs */
pre.src-conf:before { content: 'Configuration File'; }
table { border-collapse:collapse; }
caption.t-above { caption-side: top; }
caption.t-bottom { caption-side: bottom; }
td, th { vertical-align:top; }
th.org-right { text-align: center; }
th.org-left { text-align: center; }
th.org-center { text-align: center; }
td.org-right { text-align: right; }
td.org-left { text-align: left; }
td.org-center { text-align: center; }
dt { font-weight: bold; }
.footpara { display: inline; }
.footdef { margin-bottom: 1em; }
.figure { padding: 1em; }
.figure p { text-align: center; }
.equation-container {
display: table;
text-align: center;
width: 100%;
}
.equation {
vertical-align: middle;
}
.equation-label {
display: table-cell;
text-align: right;
vertical-align: middle;
}
.inlinetask {
padding: 10px;
border: 2px solid gray;
margin: 10px;
background: #ffffcc;
}
#org-div-home-and-up
{ text-align: right; font-size: 70%; white-space: nowrap; }
textarea { overflow-x: auto; }
.linenr { font-size: smaller }
.code-highlighted { background-color: #ffff00; }
.org-info-js_info-navigation { border-style: none; }
#org-info-js_console-label
{ font-size: 10px; font-weight: bold; white-space: nowrap; }
.org-info-js_search-highlight
{ background-color: #ffff00; color: #000000; font-weight: bold; }
.org-svg { width: 90%; }
/*]]>*/-->
</style>
<link rel="stylesheet" type="text/css" href="http://www.pirilampo.org/styles/readtheorg/css/htmlize.css"/>
<link rel="stylesheet" type="text/css" href="http://www.pirilampo.org/styles/readtheorg/css/readtheorg.css"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
<script type="text/javascript" src="http://www.pirilampo.org/styles/lib/js/jquery.stickytableheaders.js"></script>
<script type="text/javascript" src="http://www.pirilampo.org/styles/readtheorg/js/readtheorg.js"></script>
<script type="text/javascript">
/*
@licstart The following is the entire license notice for the
JavaScript code in this tag.
Copyright (C) 2012-2019 Free Software Foundation, Inc.
The JavaScript code in this tag is free software: you can
redistribute it and/or modify it under the terms of the GNU
General Public License (GNU GPL) as published by the Free Software
Foundation, either version 3 of the License, or (at your option)
any later version. The code is distributed WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
As additional permission under GNU GPL version 3 section 7, you
may distribute non-source (e.g., minimized or compacted) forms of
that code without the copy of the GNU GPL normally required by
section 4, provided you include this license notice and a URL
through which recipients can access the Corresponding Source.
@licend The above is the entire license notice
for the JavaScript code in this tag.
*/
<!--/*--><![CDATA[/*><!--*/
function CodeHighlightOn(elem, id)
{
var target = document.getElementById(id);
if(null != target) {
elem.cacheClassElem = elem.className;
elem.cacheClassTarget = target.className;
target.className = "code-highlighted";
elem.className = "code-highlighted";
}
}
function CodeHighlightOff(elem, id)
{
var target = document.getElementById(id);
if(elem.cacheClassElem)
elem.className = elem.cacheClassElem;
if(elem.cacheClassTarget)
target.className = elem.cacheClassTarget;
}
/*]]>*///-->
</script>
</head>
<body>
<div id="content">
<h1 class="title">Votre titre</h1>
<div id="table-of-contents">
<h2>Table des matières</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org127ab2e">1. Quelques explications</a></li>
</ul>
</div>
</div>
<div id="outline-container-org127ab2e" class="outline-2">
<h2 id="org127ab2e"><span class="section-number-2">1</span> Quelques explications</h2>
<div class="outline-text-2" id="text-1">
<p>
Ceci est un document org-mode avec quelques exemples de code python. Une fois
ouvert dans emacs, ce document peut aisément être exporté au format HTML, PDF,
et Office. Pour plus de détails sur org-mode vous pouvez consulter
<a href="https://orgmode.org/guide/">https://orgmode.org/guide/</a>.
</p>
<p>
Lorsque vous utiliserez le raccourci <code>C-c C-e h o</code>, ce document sera compilé en
html. Tout le code contenu sera ré-exécuté, les résultats récupérés et inclus
dans un document final. Si vous ne souhaitez pas ré-exécuter tout le code à
chaque fois, il vous suffit de supprimer le # et l'espace qui sont devant le
<code>#+PROPERTY:</code> au début de ce document.
</p>
<p>
Comme nous vous l'avons montré dans la vidéo, on inclue du code
python de la façon suivante (et on l'exécute en faisant <code>C-c C-c</code>):
</p>
<p>
Il existe une <a href="https://orgmode.org/worg/org-contrib/babel/languages/ob-doc-python.html">aide spécifique sur l'exécution de Python dans Org-mode</a>. En
particulier, il faut indiquer que le programme python s'appelle <code>python3</code> sous
linux, pour ne pas confondre avec <code>python2</code> , qui avait pris jusqu'ici l'alias
<code>python</code> par défaut.
</p>
<div class="org-src-container">
<pre class="src src-python"><span style="color: #b4fa70;">print</span>(<span style="color: #e9b96e;">"Hello world!"</span>)
</pre>
</div>
<pre class="example">
Hello world!
</pre>
<p>
Voici la même chose, mais avec une session python, donc une
persistance d'un bloc à l'autre (et on l'exécute toujours en faisant
<code>C-c C-c</code>).
</p>
<div class="org-src-container">
<pre class="src src-python"><span style="color: #b4fa70;">import</span> numpy
<span style="color: #fcaf3e;">x</span>=numpy.linspace(-15,15)
<span style="color: #b4fa70;">print</span>(x)
</pre>
</div>
<pre class="example">
Python 3.8.5 (default, Jul 28 2020, 12:59:40)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041
-11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592
-8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143
-5.81632653 -5.20408163 -4.59183673 -3.97959184 -3.36734694
-2.75510204 -2.14285714 -1.53061224 -0.91836735 -0.30612245
0.30612245 0.91836735 1.53061224 2.14285714 2.75510204
3.36734694 3.97959184 4.59183673 5.20408163 5.81632653
6.42857143 7.04081633 7.65306122 8.26530612 8.87755102
9.48979592 10.10204082 10.71428571 11.32653061 11.93877551
12.55102041 13.16326531 13.7755102 14.3877551 15. ]
</pre>
<p>
Et enfin, voici un exemple de sortie graphique:
</p>
<div class="figure">
<p><img src="./cosxsx.png" alt="cosxsx.png" />
</p>
</div>
<p>
Vous remarquerez le paramètre <code>:exports results</code> qui indique que le code
ne doit pas apparaître dans la version finale du document. Nous vous
recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre
(indiquer <code>both</code>) car l'objectif est que vos analyses de données soient
parfaitement transparentes pour être reproductibles.
</p>
<p>
Attention, la figure ainsi générée n'est pas stockée dans le document
org. C'est un fichier ordinaire, ici nommé <code>cosxsx.png</code>. N'oubliez pas
de le committer si vous voulez que votre analyse soit lisible et
compréhensible sur GitLab.
</p>
<p>
Enfin, n'oubliez pas que nous vous fournissons dans les ressources de
ce MOOC une configuration avec un certain nombre de raccourcis
claviers permettant de créer rapidement les blocs de code python (en
faisant <code>&lt;p</code>, <code>&lt;P</code> ou <code>&lt;PP</code> suivi de <code>Tab</code>).
</p>
<p>
Maintenant, à vous de jouer! Vous pouvez effacer toutes ces
informations et les remplacer par votre document computationnel.
</p>
</div>
</div>
</div>
<div id="postamble" class="status">
<p class="date">Date: La date du jour</p>
<p class="author">Auteur: Votre nom</p>
<p class="date">Created: 2020-11-14 sam. 21:04</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
</html>
# -*- coding: utf-8-unix; mode:org; mode: auto-fill; fill-column: 80; -*-
#+TITLE: Votre titre #+TITLE: Votre titre
#+AUTHOR: Votre nom #+AUTHOR: Votre nom
#+DATE: La date du jour #+DATE: La date du jour
#+STARTUP: showall
#+STARTUP: hidestars
#+LANGUAGE: fr #+LANGUAGE: fr
# #+PROPERTY: header-args :eval never-export #+PROPERTY: header-args :eval never-export
#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="http://www.pirilampo.org/styles/readtheorg/css/htmlize.css"/> #+HTML_HEAD: <link rel="stylesheet" type="text/css" href="http://www.pirilampo.org/styles/readtheorg/css/htmlize.css"/>
#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="http://www.pirilampo.org/styles/readtheorg/css/readtheorg.css"/> #+HTML_HEAD: <link rel="stylesheet" type="text/css" href="http://www.pirilampo.org/styles/readtheorg/css/readtheorg.css"/>
...@@ -13,22 +19,26 @@ ...@@ -13,22 +19,26 @@
* Quelques explications * Quelques explications
Ceci est un document org-mode avec quelques exemples de code Ceci est un document org-mode avec quelques exemples de code python. Une fois
python. Une fois ouvert dans emacs, ce document peut aisément être ouvert dans emacs, ce document peut aisément être exporté au format HTML, PDF,
exporté au format HTML, PDF, et Office. Pour plus de détails sur et Office. Pour plus de détails sur org-mode vous pouvez consulter
org-mode vous pouvez consulter https://orgmode.org/guide/. https://orgmode.org/guide/.
Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera Lorsque vous utiliserez le raccourci =C-c C-e h o=, ce document sera compilé en
compilé en html. Tout le code contenu sera ré-exécuté, les résultats html. Tout le code contenu sera ré-exécuté, les résultats récupérés et inclus
récupérés et inclus dans un document final. Si vous ne souhaitez pas dans un document final. Si vous ne souhaitez pas ré-exécuter tout le code à
ré-exécuter tout le code à chaque fois, il vous suffit de supprimer chaque fois, il vous suffit de supprimer le # et l'espace qui sont devant le
le # et l'espace qui sont devant le ~#+PROPERTY:~ au début de ce ~#+PROPERTY:~ au début de ce document.
document.
Comme nous vous l'avons montré dans la vidéo, on inclue du code Comme nous vous l'avons montré dans la vidéo, on inclue du code
python de la façon suivante (et on l'exécute en faisant ~C-c C-c~): python de la façon suivante (et on l'exécute en faisant ~C-c C-c~):
#+begin_src python :results output :exports both Il existe une [[https://orgmode.org/worg/org-contrib/babel/languages/ob-doc-python.html][aide spécifique sur l'exécution de Python dans Org-mode]]. En
particulier, il faut indiquer que le programme python s'appelle ~python3~ sous
linux, pour ne pas confondre avec ~python2~ , qui avait pris jusqu'ici l'alias
~python~ par défaut.
#+begin_src python :results output :exports both :python python3
print("Hello world!") print("Hello world!")
#+end_src #+end_src
...@@ -38,7 +48,7 @@ print("Hello world!") ...@@ -38,7 +48,7 @@ print("Hello world!")
Voici la même chose, mais avec une session python, donc une Voici la même chose, mais avec une session python, donc une
persistance d'un bloc à l'autre (et on l'exécute toujours en faisant persistance d'un bloc à l'autre (et on l'exécute toujours en faisant
~C-c C-c~). ~C-c C-c~).
#+begin_src python :results output :session :exports both #+begin_src python :results output :session :exports both :python python3
import numpy import numpy
x=numpy.linspace(-15,15) x=numpy.linspace(-15,15)
print(x) print(x)
...@@ -46,6 +56,9 @@ print(x) ...@@ -46,6 +56,9 @@ print(x)
#+RESULTS: #+RESULTS:
#+begin_example #+begin_example
Python 3.8.5 (default, Jul 28 2020, 12:59:40)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
[-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041 [-15. -14.3877551 -13.7755102 -13.16326531 -12.55102041
-11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592 -11.93877551 -11.32653061 -10.71428571 -10.10204082 -9.48979592
-8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143 -8.87755102 -8.26530612 -7.65306122 -7.04081633 -6.42857143
...@@ -59,7 +72,7 @@ print(x) ...@@ -59,7 +72,7 @@ print(x)
#+end_example #+end_example
Et enfin, voici un exemple de sortie graphique: Et enfin, voici un exemple de sortie graphique:
#+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results #+begin_src python :results output file :session :var matplot_lib_filename="./cosxsx.png" :exports results :python python3
import matplotlib.pyplot as plt import matplotlib.pyplot as plt
plt.figure(figsize=(10,5)) plt.figure(figsize=(10,5))
...@@ -73,6 +86,7 @@ print(matplot_lib_filename) ...@@ -73,6 +86,7 @@ print(matplot_lib_filename)
#+RESULTS: #+RESULTS:
[[file:./cosxsx.png]] [[file:./cosxsx.png]]
Vous remarquerez le paramètre ~:exports results~ qui indique que le code Vous remarquerez le paramètre ~:exports results~ qui indique que le code
ne doit pas apparaître dans la version finale du document. Nous vous ne doit pas apparaître dans la version finale du document. Nous vous
recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre recommandons dans le cadre de ce MOOC de ne pas changer ce paramètre
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment