<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Javascript | Undisconnected</title>
	<atom:link href="https://undisconnected.com/category/developpement/javascript-developpement/feed/" rel="self" type="application/rss+xml" />
	<link>https://undisconnected.com</link>
	<description>Reste connecté</description>
	<lastBuildDate>Tue, 25 Jul 2017 14:06:29 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>
	<item>
		<title>Recharger un graphique Highchart avec de nouvelles données provenant d&#8217;un formulaire</title>
		<link>https://undisconnected.com/recharger-un-graphique-highchart-avec-de-nouvelles-donnees-provenant-dun-formulaire/</link>
					<comments>https://undisconnected.com/recharger-un-graphique-highchart-avec-de-nouvelles-donnees-provenant-dun-formulaire/#comments</comments>
		
		<dc:creator><![CDATA[Imatt]]></dc:creator>
		<pubDate>Mon, 24 Mar 2014 14:20:30 +0000</pubDate>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Tutoriels]]></category>
		<category><![CDATA[highcharts]]></category>
		<category><![CDATA[recharger des données]]></category>
		<category><![CDATA[recharger un graphique]]></category>
		<category><![CDATA[tutoriel highcharts]]></category>
		<guid isPermaLink="false">https://undisconnected.com/?p=2235</guid>

					<description><![CDATA[<p>Je vous ai préparé un tutoriel sur Highchart qui explique comment recharger un graphique avec…</p>
The post <a href="https://undisconnected.com/recharger-un-graphique-highchart-avec-de-nouvelles-donnees-provenant-dun-formulaire/">Recharger un graphique Highchart avec de nouvelles données provenant d’un formulaire</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></description>
										<content:encoded><![CDATA[<p>Je vous ai préparé un tutoriel sur Highchart qui explique comment recharger un graphique avec de nouvelles données saisies dans un formulaire HTML. Dans mon cas, je vais prendre l&rsquo;exemple de quelqu&rsquo;un qui saisit des données dans des champs texte et recharger le graphique à l&rsquo;aide de ces données.</p>
<p class="links"><a href="https://undisconnected.com/sandbox/highcharts-reload/" target="_blank">Voir le résultat du tutoriel</a></p>
<h2>Structure de ce tutoriel Highcharts</h2>
<p>Pour ce tutoriel, nous allons utiliser la structure de fichier suivante :</p>
<ul>
<li>fichier index.html</li>
<li>fichier main.js (contient le code pour le graphique)</li>
<li>On appelle Highcharts &amp; jQuery via un CDN</li>
</ul>
<h2>Fichier index.html qui va accueillir le graph Highcharts</h2>
<pre>
<html>
<head>
<title>Undisconnected - Tutoriel sur comment recharger un graphique Highcharts.js avec de nouvelle données </title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

<!-- Libs -->
<script type='text/javascript' src='https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js'></script>
<script type='text/javascript' src='//cdnjs.cloudflare.com/ajax/libs/highcharts/3.0.2/highcharts.js'></script>
<script type='text/javascript' src='main.js'></script>

</head>
<body style='margin:0px;'>
<div class='wrapper'>

<div id='pieChart'></div>
  
<div id="data" style='text-align:center; width:598px;'>
  Données 1 : <input placeholder="Nom" type="text" class="titre" name="titre[]" value="Raisin" /> - <input placeholder="Valeur" type="text" class="value" name="value[]" value="8"  /><br />
  Données 2 : <input placeholder="Nom" type="text" class="titre" name="titre[]" value="Banane" /> - <input placeholder="Valeur" type="text" class="value" name="value[]" value="6" /><br />
  Données 3 : <input placeholder="Nom" type="text" class="titre" name="titre[]" value="Pommes" /> - <input placeholder="Valeur" type="text" class="value" name="value[]" value="12" /><br />
  Données 4 : <input placeholder="Nom" type="text" class="titre" name="titre[]" value="Avocats" /> - <input placeholder="Valeur" type="text" class="value" name="value[]" value="18" /><br />
  <button id="button">Recharger le graphique</button>
</div>  
  
  
</div>
</body>
</html></pre>
<p>Ici, rien de bien compliqué, on fait juste créer un fichier HTML5 en appelant le fichier main.js et les 2 librairies Highcharts et jQuery. Puis on construit un formulaire.</p>
<h2>Fichier main.js</h2>
<p>Le fichier main.js va accueillir le code qui va nous servir à créer le graph mais aussi le code qui va permettre de recharger le graph avec de nouvelles données saisies par l&rsquo;utilisateur dans un formulaire.</p>
<p>Découpons un peu le code! Premièrement, nous allons mettre en place la fonction qui va générer le graphique au chargement de la page (la première fois). Notez que l&rsquo;on assigne ce graphique à la variable <em>document.chart</em>, ceci dans le but de pouvoir accéder facilement plus tard à notre variable. (voir la portée des variables en Javascript).</p>
<p><strong>Fonction qui affiche le graphique</strong></p>
<pre>var colors = ["#1f77b4", "#aec7e8", "#ff7f0e", "#ffbb78", "#2ca02c", "#98df8a", "#d62728", "#ff9896", "#9467bd", "#c5b0d5", "#8c564b", "#c49c94", "#e377c2", "#f7b6d2", "#7f7f7f", "#c7c7c7", "#bcbd22", "#dbdb8d", "#17becf", "#9edae5"];


$.displayPieChart = function(colors, data) {
         
          document.chart = new Highcharts.Chart({
      chart: {
         renderTo: 'pieChart',
         width: 598,
         height: 450,
         marginLeft: 25,
         marginRight: 25,
      },
      colors: colors,
      title: {
         text: "Il faut manger des fruits",
         margin: 10
      },
      tooltip: {
         formatter: function() {
            return "Nombre: " + parseInt(this.y) ;
         }
      },
      plotOptions: {
         pie: {
            allowPointSelect: true,
            cursor: 'pointer',
            dataLabels: {
               enabled: true,
               formatter: function() {
                  return "" + this.point.name.toLowerCase() + "";
               }
            }
         },
         series: {
            dataLabels: {
                enabled: true,
                color: 'black',
                fontSize: 3
            }
        }
      },
       series: [{
         type: 'pie',
         name: 'fruits',
         data: data
      }]
   });
         
         
     }
</pre>
<p>Ensuite, nous allons créer la fonction qui va prendre en charge la lecture du formulaire et le rechargement du graphique en fonction des nouvelles données.</p>
<p><strong>Fonction qui va recharger le graphique</strong></p>
<pre>function getDataFromUser(){

  var value   = [];
  var titre   = [];
  var data    = [];
 
  $("#data .value").each(function(i,e){
    value.push(parseInt($(e).attr("value")));
  });

  $("#data .titre").each(function(i,e){
    titre.push($(e).attr("value"));
  });
 
  $.each(titre, function(i,e){
    var inside  = [];
    inside.push(e);
    inside.push(value[i]);
    data.push(inside);
  })
 
  return data;
}
</pre>
<p>Quelques explications :</p>
<p>Ici on va aller lire à l&rsquo;aide de jQuery les valeurs entrées dans le formulaire. On sélectionne, #data .value (la série qui contient les chiffres) et #data .titre (la série qui contient les titres). On insère ces nouvelles données dans des array Javascript à l&rsquo;aide de la méthode push. On utilise la fonction parseInt pour s&rsquo;assurer que les valeurs seront bien des integers. Il faudrait pousser plus loin la vérification des données du formulaire dans un cas réel mais pour ce tutoriel, ça suffira amplement.</p>
<p>&nbsp;</p>
<p><strong>Finalement : Document ready de jQuery pour binder les actions</strong></p>
<pre>$(function() {
  var data = getDataFromUser();

  $.displayPieChart(colors, data);
 
  $("#button").click(function(){
    var data = getDataFromUser();
   
    document.chart.series[0].setData(data);
    document.chart.redraw();
   
  })
});
</pre>
<p>Ce bout de code permet donc dans l&rsquo;ordre de :</p>
<ul>
<ul>
<li>Récupérer les données du formulaire via la fonction <em>getDataFromUser</em></li>
<li>Initialiser le graphique au chargement de la page en appelant la fonction <em>displayPieChart</em>.</li>
<li>Binder (lier) le click sur le bouton(#button) le rechargement du graphique avec les nouvelles données</li>
</ul>
</ul>
<h2>Conclusion</h2>
<p>Voici donc le résultat de ce tutoriel sur Highchart, j&rsquo;espère que ça vous sera utile. N&rsquo;hésitez pas si vous des questions / remarques en commentaires.</p>
<p class="links"><a href="https://undisconnected.com/sandbox/highcharts-reload/" target="_blank">Voir le résultat du tutoriel</a></p>The post <a href="https://undisconnected.com/recharger-un-graphique-highchart-avec-de-nouvelles-donnees-provenant-dun-formulaire/">Recharger un graphique Highchart avec de nouvelles données provenant d’un formulaire</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></content:encoded>
					
					<wfw:commentRss>https://undisconnected.com/recharger-un-graphique-highchart-avec-de-nouvelles-donnees-provenant-dun-formulaire/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
		<item>
		<title>Jquery &#8211; évenement redimension du navigateur</title>
		<link>https://undisconnected.com/jquery-evenement-redimension-du-navigateur/</link>
					<comments>https://undisconnected.com/jquery-evenement-redimension-du-navigateur/#comments</comments>
		
		<dc:creator><![CDATA[Imatt]]></dc:creator>
		<pubDate>Mon, 22 Jul 2013 08:04:41 +0000</pubDate>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[fenetre]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[navigateur]]></category>
		<category><![CDATA[redimension]]></category>
		<guid isPermaLink="false">https://undisconnected.com/?p=1923</guid>

					<description><![CDATA[<p>J&#8217;ai récemment eu un problème à gérer en Jquery. Je voulais pouvoir redimensionner une fenêtre…</p>
The post <a href="https://undisconnected.com/jquery-evenement-redimension-du-navigateur/">Jquery – évenement redimension du navigateur</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></description>
										<content:encoded><![CDATA[<p>J&rsquo;ai récemment eu un problème à gérer en Jquery. Je voulais pouvoir redimensionner une fenêtre et récupérer la largeur de la fenêtre (après redimension). Pour éviter le lag du calcul à chaque « mini » redimension, la solution est d&rsquo;agir une fois que l&rsquo;on a fini de redimensionner la fenêtre. Voici comment faire : </p>
<p><strong>Créer un nouvel évènement jQuery (à utiliser comme une fonction) : </strong></p>
<p>$(window).resize(function() {<br />    if(this.resizeTO) clearTimeout(this.resizeTO);<br />    this.resizeTO = setTimeout(function() {<br />        $(this).trigger(&lsquo;resizeEnd&rsquo;);<br />    }, 500);<br /> });</p>
<p><strong>Mettre ce code dans le document ready : </strong></p>
<p>$(window).bind(&lsquo;resizeEnd&rsquo;, function() {<br />    var wdt = $(window).width();<br />    alert(wdt);<br /> });</p>
<p>Voilà c&rsquo;est assez simple mais ça peut servir dans certain cas un peu fucké comme je viens d&rsquo;avoir ! J&rsquo;espère que ça vous servira <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>The post <a href="https://undisconnected.com/jquery-evenement-redimension-du-navigateur/">Jquery – évenement redimension du navigateur</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></content:encoded>
					
					<wfw:commentRss>https://undisconnected.com/jquery-evenement-redimension-du-navigateur/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Créer un backend simplement avec Bootstrap</title>
		<link>https://undisconnected.com/creer-un-backend-simplement-avec-bootstrap/</link>
					<comments>https://undisconnected.com/creer-un-backend-simplement-avec-bootstrap/#comments</comments>
		
		<dc:creator><![CDATA[Imatt]]></dc:creator>
		<pubDate>Thu, 16 May 2013 15:18:26 +0000</pubDate>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Outils / Logiciels]]></category>
		<category><![CDATA[bootstrap]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[responsive]]></category>
		<category><![CDATA[twitter]]></category>
		<guid isPermaLink="false">https://undisconnected.com/?p=2023</guid>

					<description><![CDATA[<p>Bootstrap est un framework permettant de développer des interfaces graphiques professionelles très simplement et très…</p>
The post <a href="https://undisconnected.com/creer-un-backend-simplement-avec-bootstrap/">Créer un backend simplement avec Bootstrap</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></description>
										<content:encoded><![CDATA[<p>Bootstrap est un framework permettant de développer des interfaces graphiques professionelles très simplement et très rapidement. Pour preuve du sérieux, le framework est développé et maintenu par Twitter! Je vais vous présenter rapidement dans cet article les différentes composantes du framework.</p>
<h2>Les différentes composantes de Bootstrap</h2>
<p>Bootstrap se compose de plusieurs éléments aidant la fondation d&rsquo;un bon design web.</p>
<h3>Scafolding</h3>
<ul>
<li><span style="line-height: 15px;">Utilisation de HTML5</span></li>
<li>Un « reset » CSS très simple basé sur Normalize.css</li>
<li>Un système de grille css (grid system)</li>
<li>Un système simple de « layout »</li>
<li>Un système pour faire un site « responsive » vraiment très bien fait</li>
</ul>
<h3>Framework CSS</h3>
<ul>
<li>Un système de typographique</li>
<li>Gestion des styles et « helper » pour les tableau HTML</li>
<li>Gestion des éléments de formulaire</li>
<li>Des boutons personnalisables (très chics)</li>
<li>« helper » pour les images</li>
<li>Un kit d&rsquo;icônes d&rsquo;actions fournis par Glyphicons</li>
</ul>
<h3>Composants de design </h3>
<ul>
<li><span style="line-height: 15px;">Groupes de boutons</span></li>
<li>« Labels » et badges</li>
<li>Fils d&rsquo;ariane (breadcrumbs)</li>
<li>« Alerts box » : Info, succès, échec, attention</li>
<li>Barres de progression</li>
<li>« Thumbnails »</li>
<li>&#8230;</li>
</ul>
<h3>Framework Javascript</h3>
<ul>
<li><span style="line-height: 15px;">« Modal box » très bien faites et facile à modifier</span></li>
<li><span style="line-height: 15px;">Gestion des transitions</span></li>
<li><span style="line-height: 15px;">Système de « tabs »</span></li>
<li><span style="line-height: 15px;">Système de « tooltips »</span></li>
<li><span style="line-height: 15px;">Alert javascript amélioré</span></li>
<li><span style="line-height: 15px;">Autocompletion pour formulaire</span></li>
<li>Système de « Popover » très bien fait</li>
<li>&#8230;</li>
</ul>
<h3>Boostrap est hautement « skinable »</h3>
<p>Le plus interessant avec Bootstrap, c&rsquo;est qu&rsquo;on peut créer des thèmes (« skins ») assez facilement. La cerise sur le gâteau c&rsquo;est que, à l&rsquo;instart de WordPress, il existe des thèmes gratuit ou payant développés par une communauté grandissante. VOus en trouverez une bonne quantité sur le site <a href="https://wrapbootstrap.com/?ref=undisconnected">http://wrapbootstrap.com</a></p>
<h2>Conclusion sur Bootstrap</h2>
<p>Bootstrap est définitivement un outil à connaître pour tout bon développeur web. Il permet de créer des interfaces très rapidement et très proprement. Je ferais quelques tutoriels dans les prochains articles. </p>
<h2>Ressources pour le framework Bootstrap</h2>
<ul>
<li><a title="Bootstrap accueil" href="http://getbootstrap.com/" target="_blank"><span style="line-height: 15px;">Bootstrap home</span></a></li>
<li><a href="https://wrapbootstrap.com/?ref=undisconnected">Wrap Bootstrap</a></li>
</ul>The post <a href="https://undisconnected.com/creer-un-backend-simplement-avec-bootstrap/">Créer un backend simplement avec Bootstrap</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></content:encoded>
					
					<wfw:commentRss>https://undisconnected.com/creer-un-backend-simplement-avec-bootstrap/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Tutoriel : Introduction à la librarie javascript d3.js</title>
		<link>https://undisconnected.com/tutoriel-introduction-d3-js/</link>
					<comments>https://undisconnected.com/tutoriel-introduction-d3-js/#comments</comments>
		
		<dc:creator><![CDATA[Imatt]]></dc:creator>
		<pubDate>Mon, 01 Apr 2013 16:05:08 +0000</pubDate>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Tutoriels]]></category>
		<category><![CDATA[Visualisation de données]]></category>
		<category><![CDATA[d3.js]]></category>
		<category><![CDATA[d3js]]></category>
		<category><![CDATA[introduction]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[librarie]]></category>
		<category><![CDATA[tutoriel]]></category>
		<guid isPermaLink="false">https://undisconnected.com/?p=1926</guid>

					<description><![CDATA[<p>Voici le premier d&#8217;une longue lignée (je l&#8217;espère) de tutoriaux en français portant sur la…</p>
The post <a href="https://undisconnected.com/tutoriel-introduction-d3-js/">Tutoriel : Introduction à la librarie javascript d3.js</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></description>
										<content:encoded><![CDATA[<p>Voici le premier d&rsquo;une longue lignée (je l&rsquo;espère) de tutoriaux en français portant sur la librarie d3.js. Pour en savoir plus sur cette librairie reportez vous à la <a href="https://undisconnected.com/d3-js-data-visualisation/">présentation que j&rsquo;en ai fait sur ce post</a>. L&rsquo;objectif de ce premier tutoriel est de faire quelques exemples d&rsquo;utilisation très simple de la librairie.</p>
<p>A l&rsquo;instart de Jquery, d3.js est une librarie qui permet de manipuler le DOM. Mais là où d3.js est très efficace est dans la manipulation de SVG.</p>
<h2>Manipuler ou créer une div avec d3.js</h2>
<p><iframe width="100%" height="300" src="http://jsfiddle.net/undisconnected/E3RCc/5/embedded/" allowfullscreen="allowfullscreen" frameborder="0"></iframe></p>
<h2>Ajouter et manipuler un rectangle SVG</h2>
<p><iframe width="100%" height="300" src="http://jsfiddle.net/undisconnected/8aRkP/embedded/" allowfullscreen="allowfullscreen" frameborder="0"></iframe></p>
<h2>Dessiner plusieurs éléments dans un groupe svg</h2>
<p><iframe width="100%" height="300" src="http://jsfiddle.net/undisconnected/8aRkP/1/embedded/" allowfullscreen="allowfullscreen" frameborder="0"></iframe></p>
<h2>Gérer des données au format JSON et dessiner en fonction de ces données</h2>
<p>Dans ce dernier exemple, nous allons construire des nodes qui sont en fait des groupes svg ayant la class « node ». Ensuite, on va dessiner, suivant les données (variable data) un cercle et afficher le nom de ce cercle dans celui -ci.</p>
<p><iframe loading="lazy" width="100%" height="300" src="http://jsfiddle.net/undisconnected/asCT4/1/embedded/" allowfullscreen="allowfullscreen" frameborder="0"></iframe></p>
<p>Le dernier exemple introduit plusieurs nouveaux concepts : selectAll(), data(), et enter().</p>
<h3>selectAll()</h3>
<p>la methode de selection selectAll permet, comme son nom l&rsquo;indique de selectionner les éléments définis par le selecteur css passé en argument. selectAll(« p ») va selectionner tous les éléments présents dans le DOM.</p>
<h3>data()</h3>
<p>La methode data() permet de « binder » (attacher) des données à des éléments sélectionnés par la methode selectAll(). Ces données une fois attachées seront utilisables dans la suite du chainage. Exemple : attr(« fill »,function(d){return d.color});</p>
<h3>enter()</h3>
<p>Cette fonction va « binder » les données à des éléments et créer les éléments sélectionnés par selectAll(). Si vous n&rsquo;utilisez pas enter() alors aucun élément ne sera crée. Seul les éléments existants seront utilisés et donc s&rsquo;il sont inexistant, rien ne s&rsquo;affichera.</p>
<h2>Ressources</h2>
<ul>
<li><a href="https://www.w3schools.com/graphics/svg_intro.asp" target="_blank" rel="noopener noreferrer">W3 School, documentation sur le SVG</a></li>
<li><a href="http://d3js.org/" target="_blank" rel="noopener noreferrer">Le site de d3.js</a></li>
<li>Approfondir sur le DOM (Document Object Model)</li>
</ul>The post <a href="https://undisconnected.com/tutoriel-introduction-d3-js/">Tutoriel : Introduction à la librarie javascript d3.js</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></content:encoded>
					
					<wfw:commentRss>https://undisconnected.com/tutoriel-introduction-d3-js/feed/</wfw:commentRss>
			<slash:comments>7</slash:comments>
		
		
			</item>
		<item>
		<title>Highcharts utilisé dans le journal Le Monde</title>
		<link>https://undisconnected.com/highcharts-le-monde/</link>
					<comments>https://undisconnected.com/highcharts-le-monde/#comments</comments>
		
		<dc:creator><![CDATA[Imatt]]></dc:creator>
		<pubDate>Tue, 02 Oct 2012 21:06:22 +0000</pubDate>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Informatique général]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Visualisation de données]]></category>
		<category><![CDATA[highcharts]]></category>
		<category><![CDATA[le monde]]></category>
		<guid isPermaLink="false">https://undisconnected.com/?p=1818</guid>

					<description><![CDATA[<p>Je suis tombé récemment sur un article du journal Le Monde qui utilisait Highcharts pour…</p>
The post <a href="https://undisconnected.com/highcharts-le-monde/">Highcharts utilisé dans le journal Le Monde</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></description>
										<content:encoded><![CDATA[<p>Je suis tombé récemment sur un article du journal Le Monde qui utilisait Highcharts pour visualiser l&rsquo;augmentation de l&rsquo;impôt sur le revenu en fonction des parts et des revenus de chaque ménage. </p>
<h2>Highcharts arrive à maturité</h2>
<p>Il est interessant de voir que le journal Le Monde se sert de cette librairie pour exposer des graphiques sur son site. Serait-ce l&rsquo;âge de la maturité enfin arrivé pour cette librairie ô combien géniale ! </p>
<p>Je dois dire que je vois de plus en plus de réalisation graphique faites avec Highcharts. Je pense personnellement que la visualisation de données se démocratise et que des fois un graphique vaux 1000 mots.</p>
<p>Voici l&rsquo;article en question : <a title="Article Le Monde" href="http://www.lemonde.fr/economie/article/2012/10/01/impots-ce-que-vous-allez-vraiment-payer_1768213_3234.html">Impôts : ce que vous allez vraiment payer</a></p>
<p><a href="https://undisconnected.com/wp-content/uploads/2012/10/Capture-d’écran-2012-10-02-à-16.17.11.png"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1819" title="Capture d’écran 2012-10-02 à 16.17.11" src="https://undisconnected.com/wp-content/uploads/2012/10/Capture-d’écran-2012-10-02-à-16.17.11.png" alt="" width="556" height="552" srcset="https://undisconnected.com/wp-content/uploads/2012/10/Capture-d’écran-2012-10-02-à-16.17.11.png 556w, https://undisconnected.com/wp-content/uploads/2012/10/Capture-d’écran-2012-10-02-à-16.17.11-150x150.png 150w, https://undisconnected.com/wp-content/uploads/2012/10/Capture-d’écran-2012-10-02-à-16.17.11-300x297.png 300w, https://undisconnected.com/wp-content/uploads/2012/10/Capture-d’écran-2012-10-02-à-16.17.11-302x300.png 302w" sizes="auto, (max-width: 556px) 100vw, 556px" /></a></p>
<h2>Conclusion </h2>
<p>Je vous rappelle que pour vos tests Highcharts, le site<a href="http://www.data.gouv.fr/" target="_blank"> data.gouv.fr</a> est très interessant et possède un grand nombre de dataset pertinents.</p>
<h2>Ressources </h2>
<ul>
<li><a title="Article Le Monde" href="http://www.lemonde.fr/economie/article/2012/10/01/impots-ce-que-vous-allez-vraiment-payer_1768213_3234.html" target="_blank">Article Le Monde</a></li>
<li><a href="http://www.highcharts.com/" target="_blank">Le site de la librarie Highcharts</a></li>
</ul>The post <a href="https://undisconnected.com/highcharts-le-monde/">Highcharts utilisé dans le journal Le Monde</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></content:encoded>
					
					<wfw:commentRss>https://undisconnected.com/highcharts-le-monde/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Visualisation de données avec sigma.js</title>
		<link>https://undisconnected.com/visualisation-de-donnees-avec-sigma-js/</link>
					<comments>https://undisconnected.com/visualisation-de-donnees-avec-sigma-js/#respond</comments>
		
		<dc:creator><![CDATA[Imatt]]></dc:creator>
		<pubDate>Sat, 21 Jul 2012 16:20:23 +0000</pubDate>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Visualisation de données]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[librairie]]></category>
		<category><![CDATA[réseau]]></category>
		<category><![CDATA[visualisation]]></category>
		<guid isPermaLink="false">https://undisconnected.com/?p=1790</guid>

					<description><![CDATA[<p>Je viens de tomber sur une nouvelle librairie Javascript qui permet de faire de la…</p>
The post <a href="https://undisconnected.com/visualisation-de-donnees-avec-sigma-js/">Visualisation de données avec sigma.js</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></description>
										<content:encoded><![CDATA[<p>Je viens de tomber sur une nouvelle librairie Javascript qui permet de faire de la visualisation de données en réseau (network graph). Je n&rsquo;ai pas encore eu le temps de l&rsquo;essayer mais je vais certainement me pencher dessus rapidement.</p>
<p>Voici le type de graphique réalisable : </p>
<p><a href="https://undisconnected.com/wp-content/uploads/2012/07/networkgraph.jpg"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1791" title="networkgraph" alt="" src="https://undisconnected.com/wp-content/uploads/2012/07/networkgraph.jpg" width="600" height="400" srcset="https://undisconnected.com/wp-content/uploads/2012/07/networkgraph.jpg 600w, https://undisconnected.com/wp-content/uploads/2012/07/networkgraph-300x200.jpg 300w, https://undisconnected.com/wp-content/uploads/2012/07/networkgraph-450x300.jpg 450w" sizes="auto, (max-width: 600px) 100vw, 600px" /></a></p>
<p>Je vous laisse regarder les exemples sur cette page : </p>
<p><a href="http://sigmajs.org/">http://sigmajs.org/</a></p>
<p>Si quelqu&rsquo;un à déjà utilisé cette librairie, je serais interessé d&rsquo;avoir des avis dessus, alors laissez un commentaire. </p>The post <a href="https://undisconnected.com/visualisation-de-donnees-avec-sigma-js/">Visualisation de données avec sigma.js</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></content:encoded>
					
					<wfw:commentRss>https://undisconnected.com/visualisation-de-donnees-avec-sigma-js/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>D3.js : un pas de plus vers la data visualisation sur le web</title>
		<link>https://undisconnected.com/d3-js-data-visualisation/</link>
					<comments>https://undisconnected.com/d3-js-data-visualisation/#comments</comments>
		
		<dc:creator><![CDATA[Imatt]]></dc:creator>
		<pubDate>Wed, 04 Jul 2012 02:49:26 +0000</pubDate>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Visualisation de données]]></category>
		<category><![CDATA[d3]]></category>
		<category><![CDATA[d3.js]]></category>
		<category><![CDATA[graphique]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[librarie]]></category>
		<guid isPermaLink="false">https://undisconnected.com/?p=1597</guid>

					<description><![CDATA[<p>D3.js est une librarie graphique écrite en Javascript crée par Mike Bostock déjà auteur de…</p>
The post <a href="https://undisconnected.com/d3-js-data-visualisation/">D3.js : un pas de plus vers la data visualisation sur le web</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></description>
										<content:encoded><![CDATA[<p>D3.js est une librarie graphique écrite en Javascript crée par Mike Bostock déjà auteur de la librarie Protovis. D3.js est en fait une évolution de protovis, son nom proviens de l&rsquo;abréviation de Data-Driven Document. </p>
<h2>Pourquoi D3.js au lieu de Protovis</h2>
<p>D&rsquo;après ce que j&rsquo;ai compris, Mike Bostock a décidé d&rsquo;arrêter le développement  de Protovis pour commencer celui de d3.js dans le but d&rsquo;offrir à tous une librarie puissante pour la visualisation basé sur des standards du W3C (HTML, SVG et CSS) au lieu de s&rsquo;attacher à un framework propriétaire. D3.js est clairement axé Web et visualisation de données, ainsi il est très simple de manipuler des données via le DOM (Document Object Model).</p>
<h2>Quelques exemples avec D3.js</h2>
<p><a href="http://mbostock.github.com/d3/ex/force.html" target="_blank">Network Force Directed graph</a></p>
<p><a href="http://mbostock.github.com/d3/ex/force.html" target="_blank"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1765" title="network" src="https://undisconnected.com/wp-content/uploads/2012/07/network.jpg" alt="" width="600" height="150" srcset="https://undisconnected.com/wp-content/uploads/2012/07/network.jpg 600w, https://undisconnected.com/wp-content/uploads/2012/07/network-300x75.jpg 300w, https://undisconnected.com/wp-content/uploads/2012/07/network-500x125.jpg 500w" sizes="auto, (max-width: 600px) 100vw, 600px" /></a></p>
<p><a target="_blank" href="http://www.nytimes.com/interactive/2012/05/17/business/dealbook/how-the-facebook-offering-compares.html">New York Times</a></p>
<p><a target="_blank" href="http://www.nytimes.com/interactive/2012/05/17/business/dealbook/how-the-facebook-offering-compares.html"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1758" title="new-york-times" src="https://undisconnected.com/wp-content/uploads/2012/07/new-york-times.jpg" alt="" width="600" height="150" srcset="https://undisconnected.com/wp-content/uploads/2012/07/new-york-times.jpg 600w, https://undisconnected.com/wp-content/uploads/2012/07/new-york-times-300x75.jpg 300w, https://undisconnected.com/wp-content/uploads/2012/07/new-york-times-500x125.jpg 500w" sizes="auto, (max-width: 600px) 100vw, 600px" /></a></p>
<p><a target="_blank" href="http://mbostock.github.com/d3/talk/20111018/cluster.html">Cluster Layout</a></p>
<p><a target="_blank" href="http://mbostock.github.com/d3/talk/20111018/cluster.html"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1759" title="cluster" src="https://undisconnected.com/wp-content/uploads/2012/07/cluster.jpg" alt="" width="600" height="150" srcset="https://undisconnected.com/wp-content/uploads/2012/07/cluster.jpg 600w, https://undisconnected.com/wp-content/uploads/2012/07/cluster-300x75.jpg 300w, https://undisconnected.com/wp-content/uploads/2012/07/cluster-500x125.jpg 500w" sizes="auto, (max-width: 600px) 100vw, 600px" /></a></p>
<p><a target="_blank" href="http://square.github.com/cubism/">Cubism.js</a></p>
<p><a target="_blank" href="http://square.github.com/cubism/"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1760" title="cubismjs" src="https://undisconnected.com/wp-content/uploads/2012/07/cubismjs.jpg" alt="" width="600" height="150" srcset="https://undisconnected.com/wp-content/uploads/2012/07/cubismjs.jpg 600w, https://undisconnected.com/wp-content/uploads/2012/07/cubismjs-300x75.jpg 300w, https://undisconnected.com/wp-content/uploads/2012/07/cubismjs-500x125.jpg 500w" sizes="auto, (max-width: 600px) 100vw, 600px" /></a></p>
<p><a target="_blank" href="http://www.jasondavies.com/wordcloud/#http%3A%2F%2Fsearch.twitter.com%2Fsearch.json%3Frpp%3D100%26q%3D%7Bword%7D=cloud">Tag Cloud </a></p>
<p><a target="_blank" href="http://www.jasondavies.com/wordcloud/#http%3A%2F%2Fsearch.twitter.com%2Fsearch.json%3Frpp%3D100%26q%3D%7Bword%7D=cloud"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1761" title="tagcloud" src="https://undisconnected.com/wp-content/uploads/2012/07/tagcloud.jpg" alt="" width="600" height="150" srcset="https://undisconnected.com/wp-content/uploads/2012/07/tagcloud.jpg 600w, https://undisconnected.com/wp-content/uploads/2012/07/tagcloud-300x75.jpg 300w, https://undisconnected.com/wp-content/uploads/2012/07/tagcloud-500x125.jpg 500w" sizes="auto, (max-width: 600px) 100vw, 600px" /></a></p>
<p><a target="_blank" href="http://mbostock.github.com/d3/talk/20111018/choropleth.html">Choropleth</a></p>
<p><a target="_blank" href="http://mbostock.github.com/d3/talk/20111018/choropleth.html"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1762" title="cloropleth" src="https://undisconnected.com/wp-content/uploads/2012/07/cloropleth.jpg" alt="" width="600" height="150" srcset="https://undisconnected.com/wp-content/uploads/2012/07/cloropleth.jpg 600w, https://undisconnected.com/wp-content/uploads/2012/07/cloropleth-300x75.jpg 300w, https://undisconnected.com/wp-content/uploads/2012/07/cloropleth-500x125.jpg 500w" sizes="auto, (max-width: 600px) 100vw, 600px" /></a></p>
<p><a target="_blank" href="http://mbostock.github.com/d3/ex/pack.html">Circle Packing</a></p>
<p><a target="_blank" href="http://mbostock.github.com/d3/ex/pack.html"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1763" title="circle-packing" src="https://undisconnected.com/wp-content/uploads/2012/07/circle-packing.jpg" alt="" width="600" height="150" srcset="https://undisconnected.com/wp-content/uploads/2012/07/circle-packing.jpg 600w, https://undisconnected.com/wp-content/uploads/2012/07/circle-packing-300x75.jpg 300w, https://undisconnected.com/wp-content/uploads/2012/07/circle-packing-500x125.jpg 500w" sizes="auto, (max-width: 600px) 100vw, 600px" /></a></p>
<h2>Conclusion</h2>
<p>Comme vous pouvez le voir d3.js est la source de beaucoup de type de représentations graphiques différentes mais aussi à la base de quelques libraries / plugins. Ainsi se termine la présentation (rapide je l&rsquo;avoue) de la librarie d3.js. A suivre un tutoriel pour mettre en place son premier graphique avec la librarie.</p>The post <a href="https://undisconnected.com/d3-js-data-visualisation/">D3.js : un pas de plus vers la data visualisation sur le web</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></content:encoded>
					
					<wfw:commentRss>https://undisconnected.com/d3-js-data-visualisation/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Comment charger des données via Ajax avec Highcharts</title>
		<link>https://undisconnected.com/comment-charger-des-donnees-via-ajax-avec-highcharts/</link>
					<comments>https://undisconnected.com/comment-charger-des-donnees-via-ajax-avec-highcharts/#comments</comments>
		
		<dc:creator><![CDATA[Imatt]]></dc:creator>
		<pubDate>Wed, 23 May 2012 17:50:02 +0000</pubDate>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Visualisation de données]]></category>
		<category><![CDATA[highcharts]]></category>
		<category><![CDATA[prix essence]]></category>
		<category><![CDATA[visualisation]]></category>
		<guid isPermaLink="false">https://undisconnected.com/?p=1629</guid>

					<description><![CDATA[<p>J&#8217;utilise de plus en plus Highcharts à mon travail et je l&#8217;apprécie de plus en…</p>
The post <a href="https://undisconnected.com/comment-charger-des-donnees-via-ajax-avec-highcharts/">Comment charger des données via Ajax avec Highcharts</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></description>
										<content:encoded><![CDATA[<p>J&rsquo;utilise de plus en plus Highcharts à mon travail et je l&rsquo;apprécie de plus en plus. Voici un tutoriel qui va vous apprendre à utiliser Highcharts avec ajax. Je vais illustrer ce tutoriel avec un dataset plutôt d&rsquo;actualité : le prix de l&rsquo;essence mis en comparaison au prix du pétrole.</p>
<h2>Que va t&rsquo;on apprendre dans ce tutoriel sur Highcharts ?</h2>
<ul>
<li>Comment charger des données via AJAX dans Highcharts</li>
<li>Comment ajouter un 2ème axe Y à un graphique pour comparer des valeurs d&rsquo;ordre différent.</li>
<li>Comment travailler les labels des axes X et Y</li>
<li>Comment insérer plusieurs séries de données dans un graph</li>
</ul>
<h2>Charger des données via AJAX dans Highcharts</h2>
<p>Pour charger des données via AJAX dans Highcharts, il s&rsquo;agit de construire un objet javascript contenant les options qui vont servir à générer le graph, il suffit donc de déclarer un objet et de lui attribuer les options de bases : </p>
<pre class="brush: javascript; gutter: true">var chart;
var colors = ["#98DF8A", "#FFBB78", "#8C564B"];
var options = {};

options.chart = {
  renderTo: 'essenceChart',
  width: 588,
  height: 400,
  marginTop: 70,
  marginLeft: 100,
  marginRight: 100,
  type:'line'
};

options.credits = {
  enabled: false
};

options.colors = colors;

options.title = {
  text: "Évolution du prix de l'essence et du baryl de pétrole de 1995 à 2012",
  margin: 10
};

options.tooltip = {
  formatter: function() {
    return "Dépense : " + number_format(this.y,3,',',' ') + "€" ;
  }
};
</pre>
<h3>Définition des variables</h3>
<p>On créer la variable « chart » qui va servir à instancier le graphique plus tard.<br /> On créer la array « colors » pour définir ses couleurs personnelles et ainsi overwriter les couleurs par défaut.<br /> On créer l&rsquo;objet « options » qui va contenir tous les paramètres définissant le graphique.</p>
<h3>Définition des paramètres du graph</h3>
<p>« options.chart » représente les paramètres généraux du graph. On va pouvoir renseigner le type, la taille, les margins, le container &#8230;<br /> « options.credits » permet de supprimer le lien vers Highcharts en bas à droite<br /> « options.colors » définit les couleurs à utiliser (couleur par défaut si non renseigné)<br /> « options.title » permet de donner un titre au graphique<br /> « options.tooltip » permet de formater l&rsquo;affichage du tooltip (étiquette au passage de la souris)</p>
<h2>Créer 2 axes Y dans Highcharts</h2>
<p>Le but de créer de axe Y est de pouvoir comparer 2 valeurs d&rsquo;ordre différent. Dans notre exemple, on va comparer le prix de l&rsquo;essence en euro avec une valeur autour de 1€ et le prix de baryl de pétrole en $ autour de 50$. Vous voyez où je veux en venir ?</p>
<pre class="brush: javascript; gutter: true">options.yAxis = [
  {
    title : {
      text: "Gazoil &amp; Super 95 (€)"
    },
    labels: {
    formatter: function() {
      return this.value +' €';
    },
    style: {
      color: '#000'
    }
  }
  },{
  title: {
    text: "Baryl brent ($US)"
  },
  labels: {
    formatter: function() {
      return this.value +' $';
    },
    style: {
      color: '#8C564B'
    }
  },
  opposite: true
}];
</pre>
<p>Je pense que la définition de l&rsquo;objet parle d&rsquo;elle même, en gros on créer un array contenant deux objets définissant chaque axe. La beauté de Highcharts réside dans le fait qu&rsquo;elle va s&rsquo;occuper de mettre à l&rsquo;échelle les axes en fonction des valeurs fournis, donc rien à faire de ce côté là.</p>
<h2>Mettre en place l&rsquo;axe des X avec une rotation des labels</h2>
<pre class="brush: javascript; gutter: true">options.xAxis = {
  categories: [],
  labels: {
    rotation: -45,
		y: 20
  }
};
</pre>
<p>Encore une fois c&rsquo;est assez parlant, vous pouvez jouer avec la valeur de rotation du label pour arriver au résultat souhaité.</p>
<h2>Insérer plusieurs dataset dans un graphique</h2>
<p>Cela se traduit par insérer plusieurs courbe dans notre graphique avec pour chaque courbe ses valeurs propres.</p>
<pre class="brush: javascript; gutter: true">options.series = [
  {
    name: 'Gazoil (€)',
    data: []
  },
  {
    name: 'Super 95 (€)',
    data: []
  },
  {
    name: 'Baryl de pétrole ($US)',
    yAxis: 1,
    data: []
  }
]
</pre>
<p>Ici nous créons donc un array de series, chaque element de cet array est un objet définissant le nom et le array qui recevra les données via ajax.</p>
<h2>Préparation du fichier HTML qui va recevoir le graphique</h2>
<pre>&lt;!DOCTYPE HTML&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Undisconnected - Prix essence illustré avec Highcharts&lt;/title&gt;

&lt;meta http-equiv=&amp;amp;quot;Content-Type&amp;amp;quot; content=&amp;amp;quot;text/html; charset=UTF-8&amp;amp;quot; /&gt;

&lt;!-- Libs --&gt;
&lt;script type=&amp;amp;#039;text/javascript&amp;amp;#039; src=&amp;amp;#039;https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js&amp;amp;#039;&gt;&lt;/script&gt;
&lt;script type=&amp;amp;#039;text/javascript&amp;amp;#039; src=&amp;amp;#039;../js/Highcharts-2.1.9/js/highcharts.js&amp;amp;#039;&gt;&lt;/script&gt;
&lt;script type=&amp;amp;#039;text/javascript&amp;amp;#039; src=&amp;amp;#039;../js/utils.js&amp;amp;#039;&gt;&lt;/script&gt;
&lt;script type=&amp;amp;#039;text/javascript&amp;amp;#039; src=&amp;amp;#039;main.js&amp;amp;#039;&gt;&lt;/script&gt;

&lt;/head&gt;
&lt;body style=&amp;amp;#039;margin:0px;&amp;amp;#039;&gt;
&lt;div class=&amp;amp;#039;wrapper&amp;amp;#039;&gt;
&lt;div id=&amp;amp;#039;essenceChart&amp;amp;#039;&gt;&lt;/div&gt;
&lt;/div&gt;

&lt;/body&gt;
&lt;/html&gt;
</pre>
<h2>Chargement des données dans Highchart</h2>
<p>Pour charger les données en ajax, j&rsquo;utilise ici la methode get de Jquery pour aller lire le fichier de donnees JSON. Il suffit ensuite de manipuler les données dans votre fonction de callback pour aller nourrir les array de data de chacune de vos series. On en profite pour créer les categories (les labels) qui apparaîtrons sur l&rsquo;axe des X.</p>
<pre class="brush: javascript; gutter: true">$.getJSON('https://undisconnected.com/sandbox/highcharts-essence/prix-essence.json', function(essence) {

    $.each(essence, function(i,e){

      var theDate = new Date(parseInt(i),0,1);

      options.series[0].data.push(e.gazoil);
      options.series[1].data.push(e.super95);
      options.series[2].data.push(e.brent);
      options.xAxis.categories.push(i);

    })
    console.log(options.categories)
    chart = new Highcharts.Chart(options);

  });
</pre>
<h2>Le resultat</h2>
<p><iframe loading="lazy" style="width: 588px; height: 430px;" src="https://undisconnected.com/sandbox/highcharts-essence/" height="240" width="320"></iframe></p>
<h2>Conclusion</h2>
<p>J&rsquo;espère que vous aurez pris plaisir à suivre ce tutoriel. Highcharts permet de customiser vos graphiques en javascript de manière simple, efficace et rapide. Comme vous le voyez, faire ce graphique n&rsquo;est pas une tâche ultra complexe et pourtant le résultat obtenu est vraiment interessant.</p>
<h2>Ressources :</h2>
<ul>
<li><a href="https://undisconnected.com/sandbox/highcharts-essence/main.js">Le fichier javascript au complet</a></li>
<li><a href="http://www.highcharts.com/">Highcharts</a></li>
</ul>The post <a href="https://undisconnected.com/comment-charger-des-donnees-via-ajax-avec-highcharts/">Comment charger des données via Ajax avec Highcharts</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></content:encoded>
					
					<wfw:commentRss>https://undisconnected.com/comment-charger-des-donnees-via-ajax-avec-highcharts/feed/</wfw:commentRss>
			<slash:comments>15</slash:comments>
		
		
			</item>
		<item>
		<title>Jquery, soyez prêt</title>
		<link>https://undisconnected.com/jquery-soyez-pret/</link>
					<comments>https://undisconnected.com/jquery-soyez-pret/#respond</comments>
		
		<dc:creator><![CDATA[Imatt]]></dc:creator>
		<pubDate>Thu, 15 Mar 2012 23:12:36 +0000</pubDate>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[document]]></category>
		<category><![CDATA[dom]]></category>
		<category><![CDATA[fonction]]></category>
		<category><![CDATA[javasscript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[load]]></category>
		<category><![CDATA[windows]]></category>
		<guid isPermaLink="false">https://undisconnected.com/?p=1331</guid>

					<description><![CDATA[<p>L&#8217;article de ce jour sera une explication rapide d&#8217;une petite subtilité que le fameux framework…</p>
The post <a href="https://undisconnected.com/jquery-soyez-pret/">Jquery, soyez prêt</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></description>
										<content:encoded><![CDATA[<p>L&rsquo;article de ce jour sera une explication rapide d&rsquo;une petite subtilité que le fameux framework Javascript Jquery propose pour charger des scripts. En effet Jquery propose 2 façons pour exécuter des instructions au loading de la page, le « document ready » et le « window load ».</p>
<h2>Le « document ready » dans Jquery</h2>
<p>C&rsquo;est la fonction la plus connue et la plus utilisé des 2 fonctions que nous allons voir.</p>
<p>La fonction « document ready » dans Jquery permet de lancer des instructions lorsque le DOM (Document Object Model) à fini de se charger. Concrètement qu&rsquo;est ce que ça veut dire ? Cela signifie que Jquery va attendre que toutes les balises HTML aient été chargées dans le document (la page web) pour exécuter les instructions à l&rsquo;intérieur de cette fonction (attacher des évènements, lancer des actions qui ont besoins que ces balises soient présentes).</p>
<pre class="brush: javascript; gutter: true">$(document).ready(function() {
// les instructions à executer quant le DOM est prêt.
alert(&quot;document is ready&quot;);
});</pre>
<h2>Le « window load » de Jquery</h2>
<p>Cette fonction moins utilisé et moins connu sert à éxécuter des instructions lorsque tous les objets de la page ont fini de charger. Concrètement qu&rsquo;est ce ça veut dire ? Jquery va attendre que tous les scripts / images / objets flash / Video &#8230; soit charger dans la page pour exécuter les instructions présentes dans cette fonction.</p>
<p>Utiliser cette fonction peut-être interessant dans certains cas précis. Je vais donner un exemple sur lequel j&rsquo;ai travaillé et qui m&rsquo;a d&rsquo;ailleurs permis de connaître l&rsquo;existence de cette fonction « window load ».</p>
<h3>L&rsquo;exemple avec window load</h3>
<p>J&rsquo;ai eu à faire un système d&rsquo;aide pour une application que je développe à ma job. Ce système d&rsquo;aide est composé de vignette qui présente chaque fonctionnalité du dashboard. Pour afficher la première vignette, il me fallait attendre que tous les éléments soient chargés. Cette fonction à donc fait le travail à merveille.</p>
<pre class="brush: javascript; gutter: true">$(window).load(function() {
// les instructions à executer quand les frames, objects and images ... sont chargés.
alert(&quot;window is loaded&quot;);
});</pre>
<p>Conclusion</p>
<p>La différence entre ces 2 fonctions est donc une question de timing mais la finalité est la même : charger les instructions à éxécuter au chargement de la page. Je connais depuis peu window load et je dois dire qu&rsquo;elle m,a été utile uniquement pour un projet et que je dirais qu&rsquo;elle est à utiliser avec prudence.</p>The post <a href="https://undisconnected.com/jquery-soyez-pret/">Jquery, soyez prêt</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></content:encoded>
					
					<wfw:commentRss>https://undisconnected.com/jquery-soyez-pret/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Highcharts une librairie javascript pour les graphs &#8211; 2/3 &#8211; Tutoriel</title>
		<link>https://undisconnected.com/highcharts-librairie-javascript-graphs-tutoriel/</link>
					<comments>https://undisconnected.com/highcharts-librairie-javascript-graphs-tutoriel/#comments</comments>
		
		<dc:creator><![CDATA[Imatt]]></dc:creator>
		<pubDate>Mon, 20 Feb 2012 18:41:06 +0000</pubDate>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Outils / Logiciels]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[highcharts]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[tutoriel]]></category>
		<guid isPermaLink="false">https://undisconnected.com/?p=1079</guid>

					<description><![CDATA[<p>Voici comme promis avec un peu de retard la suite du post sur Highchart la…</p>
The post <a href="https://undisconnected.com/highcharts-librairie-javascript-graphs-tutoriel/">Highcharts une librairie javascript pour les graphs – 2/3 – Tutoriel</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></description>
										<content:encoded><![CDATA[<p>Voici comme promis avec un peu de retard la suite du post sur Highchart la fameuse librarie javascript pour faire des graphiques. La partie 2 sur 3 sera donc consacré à un tutoriel pour démarrer avec la librarie.</p>
<p>Comme je viens de découvrir un site qui va bien m&rsquo;amuser (j&rsquo;ai nommé <a href="http://data.gouv.fr">data.gouv.fr</a>), je vais utiliser un des datasets proposés par ce site. J&rsquo;ai décidé d&rsquo;illustrer donc notre premier exemple de cette librarie Highcharts avec les données des dépenses de la sécurité sociale en France continentale par Région pour le mois de Janvier. (<a href="https://undisconnected.com/sandbox/highcharts/data.js">voici le dataset que je vous donne en json</a>). Attention les chiffres sont impressionnants.</p>
<h2>Préparation</h2>
<p>Pour commencer allez sur le site de <a href="http://www.highcharts.com/">Highcharts</a> et téléchargez la librairie. Créez un fichier index.html comme ceci :</p>
<h3>Le fichier index.html</h3>
<pre class="lang:default decode:true ">&lt;!DOCTYPE HTML&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Undisconnected - Exemples librairie js Highcharts&lt;/title&gt;

&lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /&gt;

&lt;!-- Libs --&gt;
&lt;script type='text/javascript' src='https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js'&gt;&lt;/script&gt;
&lt;script type='text/javascript' src='//cdnjs.cloudflare.com/ajax/libs/highcharts/3.0.2/highcharts.js'&gt;&lt;/script&gt;
&lt;script type='text/javascript' src='../js/utils.js'&gt;&lt;/script&gt;
&lt;script type='text/javascript' src='data.js'&gt;&lt;/script&gt;
&lt;script type='text/javascript' src='main.js'&gt;&lt;/script&gt;

&lt;/head&gt;
&lt;body style='margin:0px;'&gt;
&lt;div class='wrapper'&gt;

&lt;div id='pieChart'&gt;&lt;/div&gt;
  
  
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p>On charge les fichiers suivants :</p>
<ul>
<li>Jquery (via google api)</li>
<li>Highchart (mettre le bon chemin vers highcharts que vous avez télécharger)</li>
<li>Fichier utils.js (expliqué en dessous)</li>
<li>Fichier data.js (<a href="https://undisconnected.com/sandbox/highcharts/data.js">Le fichier data de l&rsquo;exemple</a>)</li>
<li>Main.js (le fichier qui va contenir notre code javascript pour lancer highcharts)</li>
</ul>
<div>Le fichier utils.js est un fichier qui comprends des fonctions javascript que j&rsquo;utilise souvent. La plupart de ces fonctions proviennent de php.js (<a href="https://undisconnected.com/phpjs-fonction-php-en-javascript/" target="_blank">voir mon post à propos de php.js</a>). &#8211; <a href="https://undisconnected.com/sandbox/js/utils.js" target="_blank">Télécharger le fichier utils.js</a></div>
<h3>Le fichier main.js</h3>
<pre class="brush: javascript; gutter: true">$(document).ready(function() {

  $.displayPieChart(colors, data);

});

var colors = ["#1f77b4", "#aec7e8", "#ff7f0e", "#ffbb78", "#2ca02c", "#98df8a", "#d62728", "#ff9896", "#9467bd", "#c5b0d5", "#8c564b", "#c49c94", "#e377c2", "#f7b6d2", "#7f7f7f", "#c7c7c7", "#bcbd22", "#dbdb8d", "#17becf", "#9edae5"];

$.displayPieChart = function(colors, data) {

		var chart;

		var chart = new Highcharts.Chart({
      chart: {
         renderTo: 'pieChart',
         width: 598,
         height: 450,
         marginLeft: 25,
         marginRight: 25,
      },
      colors: colors,
      title: {
         text: "Dépenses SECU janvier par région",
         margin: 10
      },
      tooltip: {
         formatter: function() {
            return "Dépense : " + number_format(this.y,0,',',' ') + "€" ;
         }
      },
      plotOptions: {
         pie: {
            allowPointSelect: true,
            cursor: 'pointer',
            dataLabels: {
               enabled: true,
               formatter: function() {
                  return "" + this.point.name.toLowerCase() + "";
               }
            }
         },
         series: {
            dataLabels: {
                enabled: true,
                color: 'black',
                fontSize: 3
            }
        }
      },
       series: [{
         type: 'pie',
         data: data
      }]
   });

	}</pre>
<p>Dans ce fichier on crée une fonction $.displayPieChart qui paramètre notre graphique.</p>
<p>Le array color représente les couleurs que l&rsquo;on va utiliser pour notre graphique (je les change car j&rsquo;aime mieux ce set de couleur que celui par défaut).</p>
<p>On appelle ensuite la fonction $.displayPieChart au document ready en passant 2 paramètres, la variable data (représente le dataset contenu dans data.js) et le array color.</p>
<h2>Le résultat</h2>
<p><iframe loading="lazy" width="300" height="150" style="width: 750px; height: 475px;" src="https://undisconnected.com/sandbox/highcharts/"></iframe><br />
Voici un beau camembert présentant les dépenses de la sécu au mois de janvier réparties par régions.</p>
<h2>Conclusion</h2>
<p>Comme vous pouvez le voir, un diagramme circulaire (camembert) est assez facile à mettre en place avec Highcharts. Aussi comme c&rsquo;est mon premier tutoriel (d&rsquo;une grande lignée j&rsquo;espère) j&rsquo;attend vos commentaires avec impatience pour améliorer ce post et les tutoriaux suivants.</p>
<p>Bientôt d&rsquo;autres exemples avec Highcharts qui seront un peu plus avancés.</p>The post <a href="https://undisconnected.com/highcharts-librairie-javascript-graphs-tutoriel/">Highcharts une librairie javascript pour les graphs – 2/3 – Tutoriel</a> first appeared on <a href="https://undisconnected.com">Undisconnected</a>.]]></content:encoded>
					
					<wfw:commentRss>https://undisconnected.com/highcharts-librairie-javascript-graphs-tutoriel/feed/</wfw:commentRss>
			<slash:comments>47</slash:comments>
		
		
			</item>
	</channel>
</rss>
