Valid XHTML     Valid CSS2    

Listing du fichier formats.php

 

00001     <?php
00002     error_reporting(
E_ALL E_NOTICE E_STRICT) ;
00003     include("std7.php"
) ;
00004     include("pagsd_inc.php"
) ;
00005     #   # (gH)   -_-  formats.php  ;  TimeStamp (unix) : 07 Janvier 2019 vers 13:23
00006     
00007     #######################################################################################
00008     
00009     debutPage
("PAGSD : formats","strict","","pagsd.js ../js/raphael.js") ;
00010     
00011     debutSection
() ;
00012     h1
(s_span("P","gbleu")."roduction ".s_span("A","gbleu")."utomatis&eacute;e de") ;
00013     h1
(s_span("G","gbleu")."raphiques, ".s_span("S","gbleu")."tatistiques et ".s_span("D","gbleu")."ocuments") ;
00014     $gh 
s_nbsp(20)." gilles.hunault \"at\" univ-angers.fr" ;
00015     h2
($gh,"gvert") ;
00016     pvide
() ;
00017     h2
(" -- pr&eacute;requis :  formats de fichiers et production automatis&eacute;e de documents");
00018     finSection
() ;
00019     
00020     ##############################################################################################
00021     
00022     debutSection
() ;
00023     
00024     $tableauDesRubriques 
= array() ;
00025     $idr 
;
00026     $idr
++; $tableauDesRubriques[$idr] = "Fichiers et formats de fichiers" ;
00027     $idr
++; $tableauDesRubriques[$idr] = "Documents, tableaux et graphiques" ;
00028     $idr
++; $tableauDesRubriques[$idr] = "Documents papier et pages $web;
00029     $idr
++; $tableauDesRubriques[$idr] = "Outils logiciels pour la production automatis&eacute;e de documents" ;
00030     $tdmCRLM 
= new tdm($tableauDesRubriques) ;
00031     $tdmCRLM
->titre() ;
00032     $tdmCRLM
->menu("oui","oui","nou") ;
00033     
00034     pvide
() ; $nrub ;
00035     
00036     ## -------------------------------------------------------------------------------------------
00037     
00038     $nrub
++ ; $tdmCRLM->afficheRubrique("oui") ; # 1. Fichiers et formats de fichiers
00039     
00040     ## -------------------------------------------------------------------------------------------
00041     
00042     blockquote
() ;
00043     
00044     p
("texte") ;
00045     echo "Sans fichiers, l'informatique n'irait pas bien loin. \n" 
;
00046     echo "Un fichier au format binaire brut ("
.b(em("raw"))." en anglais) est difficilement exploitable. \n" ;
00047     echo "On ne peut ni le lire ni le comprendre facilement. \n" 
;
00048     echo "Un fichier au format texte est tout de suite accessible, interrogeable, &eacute;ditable \n" 
;
00049     echo "m&ecirc;me s'il comporte plusieurs centaines ou plusieurs milliers de lignes. \n" 
;
00050     finp
() ;
00051     
00052     p
("texte") ;
00053     echo "Ainsi, le fichier "
.href("listefichiers.sor.txt")." qui comporte 12600 lignes peut &ecirc;tre " ;
00054     echo " consult&eacute; en ligne de commande avec des commandes comme " 
;
00055     echo b
("ls").", " ;
00056     echo b
("wc").", " ;
00057     echo b
("head").", " ;
00058     echo b
("tail").", " ;
00059     echo b
("grep")."... " ;
00060     finp
() ;
00061     
00062     # commandes.sh.sor est produit par : commandes commandes.sh "\$gh> " > commandes.sh.sor
00063     # commandes fait r&eacute;f&eacute;rence &agrave; ~/Bin/commandes.rex
00064     
00065     pre_fichier
("commandes.sh.sor","cadrebleu") ;
00066     
00067     p
("texte") ;
00068     echo "Pour trouver des lignes dans ce fichier, " 
;
00069     echo " &agrave; d&eacute;faut de "
.b("grep").", il est possible d'&eacute;diter le fichier avec un simple &eacute;diteur de textes et " ;
00070     echo " d'utiliser le menu "
.b("Edition/Rechercher").". " ;
00071     finp
() ;
00072     
00073     p
("texte") ;
00074     echo "Pour disposer de documents structur&eacute;s, lisibles, mis en page, il faut recourir \n" 
;
00075     echo " &agrave; "
.vert("Microsoft Office")." ou ".vert("Open Office")." avec leurs formats ".bleu("DOC").", ".bleu("XLS")." \n" ;
00076     echo " et plus r&eacute;cemment avec les formats "
.bleu("DOCX").", ".bleu("ODT").", ".bleu("XLSX")." et ".bleu("ODS")." (" ;
00077     echo href
("../Farcompr/sacor.htm#archives","qui sont des archives contenant des fichiers XML","nou").") \n" ;
00078     echo " \n" 
;
00079     echo "mais l'&eacute;dition au clavier et &agrave; la souris se r&eacute;v&egrave;le vite fastidieuse pour des \n" 
;
00080     echo "documents importants. L'inclusion de fichiers-texte, par exemple issus de programmes informatiques, \n" 
;
00081     echo "est un casse-t&ecirc;te avec ces logiciels alors que c'est un jeu d'enfants avec un navigateur \n" 
;
00082     echo "ou avec un logiciel comme 
$latex. \n" ;
00083     finp
() ;
00084     
00085     p
("texte") ;
00086     echo " Imaginez par exemple que vous vouliez mettre dans un document 
$word le fichier ".href("resultats.txt")." qui " ;
00087     echo " est le r&eacute;sultat de l'ex&eacute;cution du programme "
.href("montresource.php?nomfic=calculs.php","calculs.php")." et obtenu " ;
00088     echo " par la commande " 
;
00089     finp
() ;
00090     
00091     pre_fichier
("calculs.sor","cadre") ;
00092     
00093     p
("texte") ;
00094     echo " On peut soit faire un copier/coller du contenu du fichier soit utiliser une technique d'inclusion dans un "
;
00095     echo " document-ma&icirc;tre. Ce n'est pas difficile. Mais si vous modifiez le programme, il est plus complexe " 
;
00096     echo " de mettre &agrave; jour le document 
$word&nbsp;: il faut s&eacute;lectionner l'ancienne partie de document correspondant, la supprimer " ;
00097     echo " puis ins&eacute;rer le nouveau texte. Sans parler des manipulations s'il faut changer la police de caract&egrave;res (par exemple " 
;
00098     echo " pour utiliser une police non proportionnelle), ajouter la couleur, etc.\n" 
;
00099     finp
() ;
00100     
00101     p
("texte") ;
00102     echo "Lorsqu'on utilise 
$html ou $latex, il n'y a pas lieu de refaire ce genre de manipulation parce que \n" ;
00103     echo " le rendu est assur&eacute; &agrave; la vol&eacute;e, au moment o&ugrave; on demande la visualisation (
$html) ou la composition ($latex)&nbsp;" ;
00104     echo " il s'agit donc d'un "
.b("processus dynamique")." de mise en forme et de mise en page " ;
00105     echo " sans interaction clavier ou souris." 
;
00106     echo " La g&eacute;n&eacute;ralisation de formats-texte, de v&eacute;rification et de transformation par programme s'est concr&eacute;tis&eacute;e depuis le " 
;
00107     echo " d&eacute;but des ann&eacute;es 2000 par l'installation progressive de 
$xml et ses technologies $dtd$xsd$xsl." ;
00108     finp
() ;
00109     
00110     finblockquote
() ;
00111     
00112     ## -------------------------------------------------------------------------------------------
00113     
00114     $nrub
++ ; $tdmCRLM->afficheRubrique("oui") ; # 2. Documents, tableaux et graphiques
00115     
00116     ## -------------------------------------------------------------------------------------------
00117     
00118     blockquote
() ;
00119     
00120     p
("texte") ;
00121     echo "Si la notion de "
.s_span("fichier","gvert")." est essentielle en ".s_span("informatique de programmation","gbleuf").", " ;
00122     echo "celle de "
.s_span("document","gvert")." est fondamentale en ".s_span("informatique de communication","gbleuf").". \n" ;
00123     echo "Un "
.s_span("document orient&eacute; communication","grouge")." est un fichier ".b("structur&eacute;").", ".b("mis en page").". \n" ;
00124     echo "Il inclut souvent des tableaux, des images, des informations et des commentaires \n" 
;
00125     echo "ou des interpr&eacute;tations. \n" 
;
00126     echo "Mettre en page un tableau en respectant les normes de l'&eacute;dition ou de l'imprimerie \n" 
;
00127     echo "comme la justification &agrave; droite des nombres et la justification &agrave; gauche pour les \n" 
;
00128     echo "textes (comme dans l'affichage standard sous 
$excel) n'est pas en soi compliqu&eacute;&nbsp;: \n" ;
00129     echo "
$word sait le faire en automatique et fournit des menus et des icones pour le faire, $html dispose d'attributs comme " ;
00130     echo href
("../selfhtml_fr/html/texte/titres.htm#aligner","align") ;
00131     echo " ou \n" 
;
00132     echo "de propri&eacute;t&eacute;s 
$css comme " ;
00133     echo href
("../selfhtml_fr/css/proprietes/alignement.htm#text_align","text-align") ;
00134     echo ". Encore faut-il appliquer ces mises en forme \n" 
;
00135     echo "sur tous les &eacute;l&eacute;ments. \n" 
;
00136     finp
() ;
00137     
00138     
00139     p
("texte") ;
00140     echo "C'est l&agrave; o&ugrave; la programmation de tels documents prend tout son sens&nbsp;: " 
;
00141     echo " il suffit de savoir programmer la lecture d'un fichier-texte qui contient les informations et l'&eacute;criture \n" 
;
00142     echo " d'un fichier-texte qui ajoute les codes, marqueurs ou balises pour justifier les \n" 
;
00143     echo " informations et le tour est jou&eacute;&nbsp;! \n" 
;
00144     finp
() ;
00145     
00146     p
("texte") ;
00147     echo "Ainsi, le texte original qui suit (fichier "
.href("logement.txt").")" ;
00148     finp
() ;
00149     
00150     pre_fichier
("logement.txt","cadre") ;
00151     
00152     p
("texte") ;
00153     echo "est illisible ou tr&egrave;s peu lisible avec un rendu \"brut\" dans un navigateur&nbsp;:" 
;
00154     finp
() ;
00155     
00156     p
() ;
00157     echo b
("Affichage brut")."&nbsp;:" ;
00158     finp
() ;
00159     
00160     p
("cadre demiLargeur") ;
00161     echo " \n" 
;
00162     echo "LIEU MI70 MX70 MI80 MX80 MI82 MX82 MI86 MX86 MI88 MX88 \n" 
;
00163     echo "PARI 24.0 41.0 102.0 156 120 200 220 280 230 350 \n" 
;
00164     echo "PA07 38.0 61.0 145.0 180 160 300 300 400 380 450 \n" 
;
00165     echo "MARS 14.0 22.0 45.0 68 62 100 75 110 70 130 \n" 
;
00166     echo "LYON 12.0 20.0 32.0 60 50 110 85 120 60 125 \n" 
;
00167     echo "TOLO 12.0 25.0 35.0 62 39 108 65 120 95 125 \n" 
;
00168     echo "NICE 20.0 47.0 60.0 140 71 200 75 300 65 300 \n" 
;
00169     echo "NANT 9.5 28.0 34.0 70 49 93 65 120 55 120 \n" 
;
00170     echo "STRA 12.0 28.0 48.0 72 55 90 55 115 56 130 \n" 
;
00171     echo "BORD 15.0 17.0 45.0 70 45 80 60 100 65 140 \n" 
;
00172     echo "MNTP 9.5 22.0 50.0 74 60 100 65 100 65 125 \n" 
;
00173     echo "AIXP 14.0 17.5 59.0 90 47 114 55 130 55 145 \n" 
;
00174     echo "NANC 12.5 19.0 39.0 70 50 95 45 100 60 115 \n" 
;
00175     echo "PRPG 9.5 16.0 43.0 68 58 100 70 110 60 110 \n" 
;
00176     echo "STLR 14.0 15.0 40.0 56 60 75 80 120 85 135 \n" 
;
00177     echo "LROU 13.0 17.0 57.0 71 85 95 75 120 100 135 \n" 
;
00178     echo "ANTB 15.0 25.0 50.0 100 82 217 90 300 90 300 \n" 
;
00179     echo "CANN 15.0 39.0 75.0 270 130 370 80 500 80 450 \n" 
;
00180     echo "STMX 15.0 24.0 60.0 85 90 160 80 170 70 160 \n" 
;
00181     echo "AR/M 12.0 18.0 48.0 60 60 100 70 120 70 140 \n" 
;
00182     echo "LGrM 12.0 25.0 35.0 90 56 122 75 130 80 140 \n" 
;
00183     echo "Arca 18.0 22.0 57.0 107 65 156 90 165 95 165 \n" 
;
00184     echo "Roya 15.0 20.0 50.0 90 62 138 90 160 100 150 \n" 
;
00185     echo "BAUL 14.0 28.0 70.0 120 70 160 100 250 120 270 \n" 
;
00186     echo "DEAU 14.0 20.0 55.0 100 71 120 65 160 70 160 \n" 
;
00187     finp
() ;
00188     
00189     p
("texte") ;
00190     echo "Un simple ajouts de marqueurs en 
$php via les instructions du fichier " ;
00191     echo href
("montresource.php?nomfic=logement.php","logement.php")." suivant&nbsp;:" ;
00192     finp
() ;
00193     
00194     pre_fichier
("logement.php","cadrejaune") ;
00195     
00196     p
("texte") ;
00197     echo "aboutit &agrave; un texte XHTML tout-&agrave;-fait lisible via son rendu dans un navigateur." 
;
00198     finp
() ;
00199     
00200     p
() ;
00201     echo b
("Code $xhtml")." produit par la commande ".b("php logement.php &gt; logement.html") ;
00202     echo ", soit le fichier "
.href("logement.html")." (extrait)&nbsp;:" ;
00203     finp
() ;
00204     
00205     pre_fichier
("logement.html.txt","cadrejaune") ;
00206     
00207     p
() ;
00208     echo b
("Rendu")." (extrait)&nbsp;:" ;
00209     finp
() ;
00210     
00211     blockquote
() ;
00212     include("logement.php.extrait"
) ;
00213     finblockquote
() ;
00214     
00215     p
("texte") ;
00216     echo "De plus un document 
$web est accessible par programme. Ainsi le fichier " ;
00217     echo href
("logement2.html")." peut &ecirc;tre interrog&eacute; et analys&eacute; par ce simple script $r&nbsp;:" ;
00218     finp
() ;
00219     
00220     pre_fichier
("logement.r","cadrebleu") ;
00221     
00222     p
("texte") ;
00223     echo " pour produire les r&eacute;sultats suivants&nbsp;:" 
;
00224     finp
() ;
00225     
00226     pre_fichier
("logement.res","cadrejaune") ;
00227     
00228     p
("texte") ;
00229     echo "Pour les graphiques, si 
$png ext un bon format binaire d'export, $svg est un format-texte ouvert, programmable, \n" ;
00230     echo " interrogeable, animable via 
$js notamment. \n" ;
00231     echo " Vous pouvez par exemple cliquer sur le rectangle rouge  ou le cercle vert " 
;
00232     echo " et le d&eacute;placer &agrave; l'aide de la souris en tenant le bouton gauche dans le dessin ci-dessous " 
;
00233     echo " (adapt&eacute; de "
.href("http://pilat.free.fr/routines/bouger.htm","pilat[...]bouger","gnoir nou").") &nbsp;:" ;
00234     finp
() ;
00235     
00236     blockquote
() ;
00237     p
() ;
00238     debutobjet
("bouger","bouger.svg","image/svg+xml") ;
00239     finobjet
() ;
00240     finp
() ;
00241     finblockquote
() ;
00242     
00243     p
() ;
00244     echo s_span
(b("Codes-source")."&nbsp;: ","orange_stim") ;
00245     echo href
("montresource.php?nomfic=bouger.svg","SVG") ;
00246     echo "&nbsp;; " 
;
00247     echo href
("montresource.php?nomfic=bouger.js","Javascript") ;
00248     echo "." 
;
00249     finp
() ;
00250     
00251     p
("texte") ;
00252     echo "Disposer des informations en format texte (quitte &agrave; ce que ce soit par exportation d'une base de donn&eacute;es) \n" 
;
00253     echo "laisse la possibilit&eacute; de les analyser, de les visualiser. \n" 
;
00254     echo "Le logiciel 
$R est sans doute un excellent choix pour passer des donn&eacute;es initiales &agrave; des \n" ;
00255     echo "statitiques r&eacute;sum&eacute;s et &agrave; des graphiques de visualisation. \n" 
;
00256     echo " Et si les donn&eacute;es sont au d&eacute;part au format 
$xml, il suffit d'utiliser des transformations $xsl \n" ;
00257     echo "pour obtenir un format texte, 
$xml ou $xhtml. \n" ;
00258     finp
() ;
00259     
00260     finblockquote
() ;
00261     
00262     
00263     ## -------------------------------------------------------------------------------------------
00264     
00265     $nrub
++ ; $tdmCRLM->afficheRubrique("oui") ; # 3. Documents papier et pages Web
00266     
00267     ## -------------------------------------------------------------------------------------------
00268     
00269     blockquote
() ;
00270     
00271     p
("texte") ;
00272     echo "La "
.b("diffusion des documents").s_span(" avant les ann&eacute;es 2000","grouge")." se faisait presque exclusivement via des " ;
00273     echo " documents papier, que ce soit sous forme de livres ou de photocopies. La r&eacute;volution du 
$web a " ;
00274     echo " modifi&eacute; les modes de diffusion. En particulier les "
.s_span("documents $html","gbleuf")." ou ".s_span("\"pages Web\"","gbleuf")." ont invers&eacute; le " ;
00275     echo " sch&eacute;ma de distribution&nbsp;: au lieu de diffuser des contenus, on les met &agrave; disposition. C'est &agrave; " 
;
00276     echo " l'utilisateur de venir les chercher. " 
;
00277     finp
() ;
00278     
00279     p
("texte") ;
00280     echo "La volont&eacute; de partager des documents modifiables entre collaborateurs avec des ordinateurs diff&eacute;rents " 
;
00281     echo " a d&eacute;bouch&eacute; sur les "
.b("formats portables")." RTF pour les documents Word " ;
00282     echo " et CSV pour les tableaux de donn&eacute;es des feuilles Excel, sur la g&eacute;n&eacute;ralisation de HTML comme " 
;
00283     echo " langage de traitement de textes et de mise en forme pour le 
$web, sur l'installation massive de syst&egrave;mes " ;
00284     echo " AMP (Apache, Mysql Php) et de fa&ccedil;on moins imm&eacute;diate pour le grand public, de XML comme m&eacute;talangage de formats " 
;
00285     echo " ouverts pour tous les documents structur&eacute;s. " 
;
00286     finp
() ;
00287     
00288     p
("texte") ;
00289     echo "Avec tous ces formats-textes, il est possible d'&eacute;cire des documents en utilisant n'importe quel langage de programmation " 
;
00290     echo " car il suffit d'&eacute;crire de codes, des marqueurs, des balises, voire juste des points-virgules pour fournir un fichier " 
;
00291     echo " importable et convertible. MySQL lui-m&ecirc;me sait exporter dans les formats HTML et XML comme on peut le voir " 
;
00292     echo " sur cet extrait de sortie de l'"
.href("aide_mysql.txt","aide de MySQL")."&nbsp;:" ;
00293     finp
() ;
00294     
00295     pre_fichier
("aide_mysql_courte.txt","cadre") ;
00296     
00297     
00298     p
("texte") ;
00299     echo "Produire des documents \"informationnels\" &agrave; l'aide de programmes informatiques est donc une activit&eacute; assez simple" 
;
00300     echo " qui demande seulement de savoir quels marqueurs programmer et o&ugrave; les ins&eacute;rer dans les fichiers-texte pour " 
;
00301     echo " obtenir le rendu souhait&eacute;. Toutefois, les mettre &agrave; disposition sur le 
$web dans un format autre que PDF ou non " ;
00302     echo " imprimable directement m&egrave;ne &agrave; des changements notables dans les documents. " 
;
00303     finp
() ;
00304     
00305     p
("texte") ;
00306     echo "La premi&egrave;re plus grande diff&eacute;rence entre un document papier et un document 
$web est la notion de "."page".". " ;
00307     echo " Une page physique, que ce soit au format "
.b("letter US")." ou ".b("A4")." impose des contraintes pr&eacute;cises de mise en page alors " ;
00308     echo " qu'un document 
$web peut se contenter d'afficher en continu, sans limite de taille horizontale ou verticale. Les navigateurs $web " ;
00309     echo " sont devenus en quelque sorte des visualiseurs universels, capables d'afficher des fichiers-textes tr&egrave;s longs comme " 
;
00310     echo href
("../wstat/Eda/edaData/polio.dar","ce fichier")." de  401 975 lignes. " ;
00311     echo " Ou encore cet "
.href("../Idas/Ccd/leadb_710_fasta_aaa.dac.txt","autre fichier")." de 8002 colonnes." ;
00312     echo " Bien configur&eacute;s, les navigateurs affichent des textes, des images, des animations et viennent d&eacute;l&eacute;guer aux logiciels install&eacute;s " 
;
00313     echo " les fichiers plus techniques comme des documents Word ou des documents Excel." 
;
00314     finp
() ;
00315     
00316     p
("texte") ;
00317     echo "La deuxi&egrave;me plus grande diff&eacute;rence entre un document papier et un document 
$web est la notion d' "."interactivit&eacute;".". " ;
00318     echo " Ainsi, la programmation des pages 
$web permet de mettre en ligne des contenus issus de bases de donn&eacute;es ou de programmes complexes " ;
00319     echo " dont les entr&eacute;es sont lues dans des formulaires." 
;
00320     finp
() ;
00321     
00322     finblockquote
() ;
00323     
00324     
00325     ## -------------------------------------------------------------------------------------------
00326     
00327     $nrub
++ ; $tdmCRLM->afficheRubrique("oui") ; # 4. Outils logiciels pour la production automatis&eacute;e de documents
00328     
00329     ## -------------------------------------------------------------------------------------------
00330     
00331     $sousrub 
;
00332     blockquote
() ;
00333     
00334     $sousrub
++ ; h3($nrub.".".$sousrub." Graphviz et dot") ;
00335     
00336     p
("texte") ;
00337     echo "Pour produire des graphiques complexes mais structur&eacute;s comme des " 
;
00338     echo href
("http://fr.wikipedia.org/wiki/Th%C3%A9orie_des_graphes","graphes","gbleuf nou") ;
00339     echo " (au sens informatique du terme) " 
;
00340     echo " dont des " 
;
00341     echo href
("http://fr.wikipedia.org/wiki/Arbre_%28graphe%29","arbres informatiques","gbleuf nou") ;
00342     echo ", une suite logicielle comme " 
;
00343     echo href
("http://en.wikipedia.org/wiki/Graphviz","Graphviz","gvert nou")." et en particulier son " ;
00344     echo href
("http://en.wikipedia.org/wiki/DOT_%28graph_description_language%29","programme et langage dot","grouge nou") ;
00345     echo " suffit. L'&eacute;criture des fichiers associ&eacute;s, de type "
.b(".dot")." ou, mieux, pour &eacute;viter un conflit " ;
00346     echo " avec les fichiers de mod&egrave;les de "
.b("Microsoft Word").", de type ".b(".gv")." ou ".b(".gv.txt") ;
00347     echo " se fait soit avec un simple &eacute;diteur de textes soit en programmant les instructions de "
.b("dot")."..." ;
00348     echo " N'importe quel " 
;
00349     echo href
("../tuteurs/tutliste.htm","langage de programmation","gbleuf nou")." convient pour cela, mais un " ;
00350     echo href
("http://fr.wikipedia.org/wiki/Langage_de_script","langage de script","gvert nou") ;
00351     echo " est sans doute plus adapt&eacute; qu'un langage compil&eacute; traditionnel." 
;
00352     finp
() ;
00353     
00354     p
("texte") ;
00355     echo "Voici par exemple le texte d'un fichier "
.b("DOT")." qui correspond &agrave; un graphe complet pour 3 sommets " ;
00356     echo " nomm&eacute;s "
.b("A").", ".b("B")." et ".b("C")."&nbsp;:" ;
00357     finp
() ;
00358     
00359     pre_fichier
("un.dot","cadrebleu") ;
00360     
00361     p
("texte") ;
00362     echo "Et son rendu en "
.b("PNG").", sachant que c'est le logiciel ".b("DOT")." qui choisit les coordonn&eacute;es de trac&eacute;&nbsp;:" ;
00363     # trac&eacute; produit par : dot -T png un.dot -o un.png
00364     finp
() ;
00365     
00366     pre
("cadre") ;
00367      nbsp
(15) ;
00368      $img 
"un.png" ;
00369      echo href
($img,img($img)) ;
00370     finpre
() ;
00371     
00372     p
("texte") ;
00373     echo "Les options de 
$dot permettent une gestion fine du placement des noeuds&nbsp;:" ;
00374     finp
() ;
00375     
00376     pre_fichier
("triangle3.dot","cadrebleu") ;
00377     
00378     pre
("cadre") ;
00379      nbsp
(15) ;
00380      $img 
"triangle3.png" ;
00381      echo href
($img,img($img)) ;
00382     finpre
() ;
00383     
00384     $sousrub
++ ; h3($nrub.".".$sousrub." SVG") ;
00385     
00386     p
("texte") ;
00387     echo "Pour des graphiques plus g&eacute;n&eacute;raux, un langage de description vectoriel 2D " 
;
00388     echo " comme "
.href("http://fr.wikipedia.org/wiki/Scalable_Vector_Graphics","SVG") ;
00389     echo " est un bon choix. Technique mais simple " 
;
00390     echo " car " 
;
00391     echo href
("http://en.wikipedia.org/wiki/Scalable_Vector_Graphics","SVG","gbleuf nou") ;
00392     echo " est un format " 
;
00393     echo href
("http://fr.wikipedia.org/wiki/Extensible_Markup_Language","XML","gbleuf nou") ;
00394     echo ", on peut &eacute;crire du "
.b("SVG")." avec un &eacute;diteur de textes, avec le logiciel " ;
00395     echo href
("http://fr.wikipedia.org/wiki/Inkscape","Inkscape","gbleuf nou") ;
00396     echo " ou par programme. On peut animer du "
.b("SVG")." avec ".href("http://fr.wikipedia.org/wiki/Javascript","Javascript","gbleuf nou") ;
00397     echo " comme on peut le voir "
.href("http://www.draw4free.com/tutorial/chess/ChessNotationPlayer.html","ici")."." ;
00398     finp
() ;
00399     
00400     p
("texte") ;
00401     echo "Voici par exemple le texte d'un fichier SVG qui correspond &agrave; un mini-&eacute;chiquier de 3x3&nbsp;:" 
;
00402     finp
() ;
00403     
00404     pre_fichier
("chess3-3.svg","cadrebleu") ;
00405     
00406     p
("texte") ;
00407     echo "Et voici son rendu une fois export&eacute; en "
.b("PNG") ;
00408     echo " (le \"vrai\" "
.b("SVG")." est ".href("chess3-3.svg","ici").") &nbsp;:" ;
00409     finp
() ;
00410     
00411     pre
("cadre") ;
00412      nbsp
(15) ;
00413      $img 
"chess3-3.png" ;
00414      echo href
($img,img($img,"",150)) ;
00415     finpre
() ;
00416     
00417     $sousrub
++ ; h3($nrub.".".$sousrub." Le logiciel R") ;
00418     
00419     p
("texte") ;
00420     echo "Pour r&eacute;aliser des calculs statistiques et des graphiques statistiques, le " 
;
00421     echo href
("http://cran.r-project.org/","logiciel R","gbleuf nou")." ou ".b('"CRAN software"') ;
00422     echo " et son langage de programmation " 
;
00423     echo " est certainement l'outil le plus adapt&eacute;. " 
;
00424     finp
() ;
00425     
00426     p
("texte") ;
00427     echo "Voici par exemple le texte d'un script "
.b("R")." qui " ;
00428     echo " affiche l'histogramme des fr&eacute;quences de codes-sexe&nbsp;:" 
;
00429     finp
() ;
00430     
00431     pre_fichier
("unr.r","cadrebleu") ;
00432     
00433     p
("texte") ;
00434     echo "Et l'image produite&nbsp;:" 
# via unr2.r
00435     finp
() ;
00436     
00437     p
() ;
00438      nbsp
(15) ;
00439      $img 
"unr.png" ;
00440      echo href
($img,img($img,"",600)) ;
00441     finp
() ;
00442     
00443     p
("texte") ;
00444     echo "Bien s&ucirc;r rien n'emp&ecirc;che de produire un script "
.b("R")." &agrave; la vol&eacute;e, par exemple via " ;
00445     echo " un script "
.b("PHP")." comme dans la page " ;
00446     echo href
("../Leadb/index.php?action=12&amp;mode=2&amp;idp=1&amp;ndp=Length&amp;ndpl=Number+of+amino+acids","LEADB")."." ;
00447     finp
() ;
00448     
00449     p
("texte") ;
00450     echo "Avec ses " 
;
00451     echo href
("http://cran.r-project.org/web/packages/","milliers de packages") ;
00452     echo " (plus de 5800 en juillet 2014), 
$R permet aussi de traiter de nombreux calculs autant informatiques " ;
00453     echo " que statistiques. Voici en quatre instructions comment tracer le graphe complet pr&eacute;c&eacute;dent&nbsp;:" 
;
00454     finp
() ;
00455     
00456     pre_fichier
("triangle.r","cadrebleu") ;
00457     
00458     p
("texte") ;
00459     echo "Et l'image produite&nbsp;:" 
# via triangle2.r
00460     finp
() ;
00461     
00462     p
() ;
00463      nbsp
(15) ;
00464      $img 
"rtriangle.png" ;
00465      echo href
($img,img($img,"",300)) ;
00466     finp
() ;
00467     
00468     $sousrub
++ ; h3($nrub.".".$sousrub." LATEX") ;
00469     
00470     p
("texte") ;
00471     echo "Pour des documents &agrave; imprimer ou &agrave; rendre sous un format PDF, le logiciel " 
;
00472     echo href
("http://fr.wikipedia.org/wiki/LaTeX","$LATEX")." est le meilleur outil. Utilis&eacute; au niveau professionnel dans l'imprimerie, " ;
00473     echo " il est assez technique &agrave; maitriser mais tellement "
.b("complet")." qu'on ne peut pas lui en vouloir." ;
00474     echo " Historiquement pr&eacute;vu pour &eacute;crire des documents math&eacute;matiques, on s'en sert aujourd'hui pour produire des documents de qualit&eacute;." 
;
00475     finp
() ;
00476     
00477     p
("texte") ;
00478     echo "Le code 
$LATEX suivant montre la formule de la ".b("correction relativiste").". " ;
00479     echo " Le fichier PDF r&eacute;sultat est "
.href("unt.pdf","ici").". " ;
00480     finp
() ;
00481     
00482     pre_fichier
("unt.tex","cadrebleu") ;
00483     
00484     p
("texte") ;
00485     echo "Voici une copie-&eacute;cran du rendu&nbsp;:" 
;
00486     finp
() ;
00487     
00488     pre
("cadre") ;
00489      nbsp
(15) ;
00490      $img 
"unt.png" ;
00491      echo href
($img,img($img)) ;
00492     finpre
() ;
00493     
00494     p
("texte") ;
00495     echo "Le syst&egrave;me de base de 
$LATEX est compl&eacute;t&eacute; par de nombreux packages dont l'un des plus connus est " ;
00496     echo href
("http://tug.org/PSTricks/main.cgi?file=Examples/Gallery/Gallery","PSTricks").". " ;
00497     echo " Revoici le graphe complet sur les trois sommets A, B et C avec ce package&nbsp;:" 
;
00498     finp
() ;
00499     
00500     pre_fichier
("triangle.tex","cadrebleu") ;
00501     
00502     p
("texte") ;
00503     echo "Et son rendu&nbsp;:" 
;
00504     finp
() ;
00505     
00506     pre
("cadre") ;
00507      nbsp
(15) ;
00508      $img 
"triangle.png" ;
00509      echo href
($img,img($img)) ;
00510     finpre
() ;
00511     
00512     $sousrub
++ ; h3($nrub.".".$sousrub." Sweave") ;
00513     
00514     p
("texte") ;
00515     echo "Comme 
$LATEX dispose de commandes de programmation rudimentaires, le couplage de $LATEX et d'un langage de scripts se r&eacute;v&egrave;le " ;
00516     echo " en g&eacute;n&eacute;ral tr&egrave;s efficace. En particulier le couple 
$LATEX+$R est un bon compromis pour pallier &agrave; la faiblesse des affichages de R. " ;
00517     echo " Ce couplage est notamment int&eacute;gr&eacute; dans " 
;
00518     echo href
("http://en.wikipedia.org/wiki/Sweave","$Sweave").". On trouve un exemple de \"gros\" manuel produit par $Sweave " ;
00519     echo " &agrave; l'adresse "
.href("../Leadb/leaman/LEADBpart2.pdf","leadb stats part 2","gbleuf nou").". " ;
00520     echo " Voici un extrait du code correspondant qui montre bien le m&eacute;lange 
$LATEX et $R&nbsp;:" ;
00521     finp
() ;
00522     
00523     pre_fichier
("uns.rnw","cadrebleu") ;
00524     
00525     $sousrub
++ ; h3($nrub.".".$sousrub." PHP, Javascript et leurs biblioth&egrave;ques de fonctions") ;
00526     
00527     p
("texte") ;
00528     echo " Pour le 
$web, des outils de trac&eacute; &agrave; la vol&eacute;e sont disponibles, notamment via Javascript et PHP." ;
00529     echo " Outre les biblioth&egrave;ques g&eacute;n&eacute;ralistes comme "
.href("http://jpgraph.net/","jpgraph")." et " ;
00530     echo href
("http://dmitrybaranovskiy.github.io/raphael/","raphael").", " ;
00531     echo " deux biblioth&egrave;ques bas&eacute;es sur le m&ecirc;me concept de " 
;
00532     echo b
(" data driven documents")." sont, selon nous, &agrave; connaitre absolument&nbsp;: " ;
00533     echo href
("http://mbostock.github.io/protovis/","protovis")." et " ;
00534     echo href
("http://d3js.org/","d3js").". " ;
00535     finp
() ;
00536     
00537     # ajouter des images, une d&eacute;mo ?
00538     
00539     
00540     p
("texte") ;
00541     echo "Voici un exemple de trac&eacute; avec "
.href("http://raphaeljs.com/","raphael")." (voir ".href("raphael.php")." pour les codes-source)&nbsp;:" ;
00542     finp
() ;
00543     
00544     div
("","page") ;
00545     jsf
("raphaeldemo.js") ;
00546     findiv
() ;
00547     
00548     
00549     finblockquote
() ;
00550     
00551     
00552     ## -------------------------------------------------------------------------------------------
00553     
00554     pvide
() ;
00555     
00556     p
() ;
00557     echo href
("montresource.php?nomfic=formats.php","Code-source de cette page","orange_stim nou")."." ;
00558     finp
() ;
00559     
00560     
00561     finSection
() ;
00562     finPage
() ;
00563     ?>

Pour ne pas voir les numéros de ligne, ajoutez &nl=non à la suite du nom du fichier.

 

 

retour gH    Retour à la page principale de   (gH)