Début avec Chart.js: tarte, beignet et graphiques à bulles
Ce tutoriel expliquera comment créer des graphiques à tarte, anneaux et bulles à l'aide de chart.js. Auparavant, nous avons appris quatre types de graphiques de graphique.
Créer des graphiques à tarte et à anneaux
Les graphiques à tarte et les graphiques d'anneaux sont idéaux pour montrer les proportions d'un tout divisé en différentes parties. Par exemple, un graphique à secteurs peut être utilisé pour montrer le pourcentage de lions mâles, de lions féminins et de jeunes lions dans un safari, ou le pourcentage de votes que différents candidats reçoivent lors des élections.
Les graphiques à tarte ne conviennent que pour comparer des paramètres ou des ensembles de données uniques. Il convient de noter que le graphique à tarte ne peut pas dessiner des entités avec une valeur nulle car l'angle du ventilateur dans le graphique à tarte dépend de la taille numérique du point de données. Cela signifie que toute entité avec une proportion de zéro ne sera pas affichée sur le graphique. De même, les valeurs négatives ne peuvent pas être dessinées sur les graphiques circulaires.
Dans chart.js, vous pouvez créer un graphique à tarte en définissant type
à pie
et un graphique en anneau en définissant type
à doughnut
. Voici un exemple de création des deux graphiques:
var pichart = nouveau graphique (votescanvas, {{ Type: 'Pie', Données: votesdata, Options: chartoptions }); var Doughnutchart = nouveau graphique (votescanvas, { Type: «Donut», Données: votesdata, Options: chartoptions });
Créons un graphique à tarte montrant les données d'exportation de pétrole (unité: milliards de dollars américains) pour les cinq meilleurs exportateurs de pétrole en 2015.
var data = { Étiquettes: [ "Arabie Saoudite", "Russie", "Irak", "ÉMIRATS ARABES UNIS", "Canada" ], ensembles de données: [ { Données: [133.3, 86.2, 52.2, 51.2, 50.2], BackgroundColor: [ "# Ff6384", "# 63ff84", "# 84ff63", "# 8463ff", "# 6384ff" ]] }] };
Vous pouvez utiliser différentes clés pour contrôler l'affichage du graphique ci-dessus, tel que cutout
, qui peut être un nombre ou une chaîne. S'il est spécifié en nombre, la valeur est considérée comme une valeur de pixel; si elle est spécifiée en tant que chaîne se terminant en % , la valeur est considérée comme un pourcentage du rayon total. Vous pouvez utiliser rotation
pour spécifier l'angle de départ du graphique. De même, vous pouvez également utiliser circumference
pour spécifier l'angle auquel le graphique scanne lors du traçage des données. Les deux angles sont exprimés en degrés plutôt qu'en radians.
Deux animations différentes peuvent être activées lors du dessin d'un graphique. Vous pouvez utiliser la touche animateRotate
pour spécifier si le graphique doit avoir une animation de rotation. De même, vous pouvez également utiliser la touche animateScale
pour spécifier si le graphique de la bague doit être mis à l'échelle du centre. La valeur de animateRotate
est true
par défaut, et la valeur d' animateScale
est false
par défaut.
Comme d'habitude, vous pouvez utiliser backgroundColor
, borderColor
et borderWidth
pour contrôler la couleur de l'arrière-plan, la couleur de la bordure et la largeur de la bordure de tous les points de données, respectivement. De même, les valeurs de survol de toutes ces propriétés peuvent être contrôlées à l'aide hoverBackgroundColor
, hoverBorderColor
et hoverBorderWidth
.
Ce qui suit est le code pour créer un graphique en anneau pour les données ci-dessus. Définissez la valeur de rotation
sur -90
Réglez le point de départ pour faire tourner 90 degrés dans le sens antihoraire.
var oildata = { Libellés: ["Arabie saoudite", "Russie", "Irak", "EAU", "Canada"], ensembles de données: [ { Données: [133.3, 86.2, 52.2, 51.2, 50.2], BackgroundColor: ["# ff6384", "# 63ff84", "# 84ff63", "# 8463ff", "# 6384ff"], BorderColor: "noir", Borderwidth: 2 } ]] }; var chartOptions = { Rotation: -90, Découpe: "45%", Plugins: { titre: { Affichage: vrai, Position: "en bas", Texte: "Major Exportateurs de pétrole en 2015", FONT: { Taille: 32 } }, légende: { Position: "à gauche", Aligner: "Démarrer" } }, Animation: { Animaterotate: faux, animatscale: vrai } }; var donutchart = nouveau graphique (OilCanvas, {{ Type: "Donut", Données: Oildata, Options: chartoptions });
Créer un graphique à bulles
Des graphiques à bulles sont utilisés pour dessiner ou afficher trois dimensions de données sur un graphique ( P1 , P2 , P3 ). La position et la taille de la bulle déterminent les valeurs de ces trois points de données. L'axe horizontal représente le premier point de données (P1), l'axe vertical représente le deuxième point de données ( P2 ), et la zone de la bulle est utilisée pour représenter la valeur du troisième point de données ( P3 ).
Il convient de noter que la taille du troisième point de données n'est pas représentée par le rayon des bulles, mais par leur zone. La zone du cercle est proportionnelle au carré du rayon. Cela signifie que vous devez vous assurer que le rayon de bulle que vous dessinez est proportionnel à la racine carrée de la taille du troisième point de données.
Dans chart.js, vous pouvez créer un graphique à bulles en définissant la valeur de type
à bubble
. Voici un exemple de la façon de créer un graphique à bulles:
var bubblechart = nouveau graphique (popcanvas, { Type: «bulle», Données: popdata, Options: chartoptions });
Utilisons des graphiques à bulles pour dessiner le poids de différents articles dans la pièce. Les données du graphique doivent être transmises au format objet. L'objet de données doit avoir l'interface suivante pour dessiner correctement.
{ x:<number> , Y:<number> , R:<number> }</number></number></number>
Une différence importante entre un graphique à bulles et tous les autres graphiques est que le rayon de bulle ne fait pas évoluer avec le graphique.
Par exemple, la largeur d'une barre dans un graphique à barres augmente ou diminue en fonction de la taille du graphique. Cela ne se produira pas avec le graphique à bulles. Le rayon de la bulle est toujours égal au nombre exact de pixels que vous spécifiez. Cela a du sens car dans ce type de graphique, le rayon est réellement utilisé pour représenter les données réelles.
Créons un graphique à bulles pour tracer le nombre de troupeaux de cerfs à différents endroits de la forêt.
var popdata = { ensembles de données: [ { Étiquette: ["Herd de cerf"], données: [ {x: 100, y: 0, r: 10}, {x: 60, y: 30, r: 20}, {x: 40, y: 60, r: 25}, {x: 80, y: 80, r: 30}, {x: 20, y: 30, r: 25}, {x: 0, y: 100, r: 5} ], BackgroundColor: "# ff9966" } ]] };
Étant donné que le rayon ici est proportionnel à la racine carrée du nombre réel, le nombre de cerfs à (80, 80) est 36 fois le nombre de cerfs à (0, 100).
Comme tous les autres types de graphiques, vous pouvez utiliser backgroundColor
, borderColor
et borderWidth
pour contrôler la couleur d'arrière-plan, la couleur de la bordure et la largeur des bordures des points dessinés. De même, vous pouvez également utiliser hoverBackgroundColor
, hoverBorderColor
et hoverBorderWidth
pour spécifier la couleur d'arrière-plan de survol, la couleur de bordure de volant et la largeur de bordure de volant.
Vous pouvez également utiliser hoverRadius
pour spécifier le rayon supplémentaire pour ajouter à différentes bulles lors du volant. N'oubliez pas que ce rayon sera ajouté à la valeur d'origine pour dessiner la bulle en volante. Si le rayon de la bulle d'origine est 10 et que hoverRadius
est réglé sur 5, le rayon de la bulle sur volant sera égal à 15.
var popdata = { ensembles de données: [ { Étiquette: ["Herd de cerf"], données: [ {x: 100, y: 0, r: 10}, {x: 60, y: 30, r: 20}, {x: 40, y: 60, r: 25} ], BackgroundColor: "# 9966FF", hoverbackgroundcolor: "#fffff", hoverbordercolor: "# 9966ff", hoverborderwidth: 5, Hoverradius: 5 }, { Étiquette: ["Numéro de girafe"], données: [ {x: 80, y: 80, r: 30}, {x: 20, y: 30, r: 25}, {x: 0, y: 100, r: 5} ], BackgroundColor: "# ff6600", hoverbackgroundcolor: "#fffff", hoverbordercolor: "# ff6600", hoverborderwidth: 5, Hoverradius: 5 } ]] }; var chartOptions = { Plugins: { titre: { Affichage: vrai, Position: "en bas", Texte: "Nombre d'animaux dans différents points chauds", FONT: { Taille: 20 } }, légende: { Position: "en bas", Aligner: "Centre" } }, mise en page: { rembourrage: 20 } };
Les paramètres ci-dessus créeront le graphique à bulles suivant.
Résumer
Dans ce tutoriel, vous avez appris trois autres types de graphiques disponibles dans chart.js. Vous devriez maintenant être en mesure de sélectionner le type de graphique approprié pour tracer les données et définir des valeurs spécifiques pour différentes clés pour contrôler son apparence. Dans le prochain tutoriel, vous apprendrez à manipuler des échelles pour différents types de graphiques.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La portée de JavaScript détermine la portée d'accessibilité des variables, qui sont divisées en étendue globale, fonction et au niveau du bloc; Le contexte détermine la direction de cela et dépend de la méthode d'appel de fonction. 1. Les étendues incluent la portée globale (accessible n'importe où), la portée de la fonction (valide uniquement dans la fonction) et la portée au niveau du bloc (LET et const sont valides dans {}). 2. Le contexte d'exécution contient l'objet variable, la chaîne de portée et les valeurs de cela. Cela pointe vers global ou non défini dans la fonction ordinaire, l'appel de méthode pointe vers l'objet d'appel, le constructeur pointe vers le nouvel objet, et peut également être explicitement spécifié par appel / application / liaison. 3. La fermeture fait référence aux fonctions accédant et en se souvenant des variables de portée externes. Ils sont souvent utilisés pour l'encapsulation et le cache, mais peuvent provoquer

Pour obtenir la valeur de la boîte d'entrée HTML, le noyau consiste à trouver l'élément correspondant via l'opération DOM et à lire l'attribut de valeur. 1. Utilisez Document.GetElementByid pour être le moyen le plus direct. Après avoir ajouté un ID à l'entrée, vous pouvez obtenir l'élément et lire la valeur via cette méthode; 2. Utilisez QueySelector pour être plus flexible, et vous pouvez sélectionner des éléments en fonction d'attributs tels que le nom, la classe, le type, etc.; 3. Vous pouvez ajouter des auditeurs d'événements d'entrée ou de modification pour atteindre des fonctions interactives, telles que l'obtention du contenu d'entrée en temps réel; 4. Faites attention au synchronisation d'exécution du script, aux erreurs d'orthographe et au jugement nul, et assurez-vous que l'élément existe avant d'accéder à la valeur.

Il existe deux méthodes de base pour obtenir la valeur du bouton radio sélectionné. 1. Utilisez QuerySelector pour obtenir directement l'élément sélectionné, et utilisez l'entrée [name = "Votre nom-radio"]: Sélecteur vérifié pour obtenir l'élément sélectionné et lire son attribut de valeur. Il convient aux navigateurs modernes et a un code concis; 2. Utilisez Document.PetelementsByName pour traverser et trouver la première radio vérifiée via la boucle Nodelist et obtenir sa valeur, qui convient aux scénarios compatibles avec les anciens navigateurs ou nécessitent un contrôle manuel du processus; De plus, vous devez faire attention à l'orthographe de l'attribut de nom, à la gestion des situations non sélectionnées et à un chargement dynamique du contenu

Pour utiliser JavaScript pour créer un sandbox sable sécurisé iframe, utilisez d'abord l'attribut de bac à sable de HTML pour limiter le comportement IFRAME, tel que l'interdiction de l'exécution du script, des fenêtres contextuelles et de la soumission de formulaire; Deuxièmement, en ajoutant des jetons spécifiques tels que des scénaristes pour assouplir les autorisations au besoin; Combinez ensuite PostMessage () pour obtenir une communication inter-domaine sécurisée, tout en vérifiant strictement les sources et les données de messages; Enfin, évitez les erreurs de configuration courantes, telles que ne pas vérifier la source, ne pas configurer CSP, etc., et effectuer des tests de sécurité avant de se rendre en ligne.

CompositionAPI dans Vue3 convient plus à la logique complexe et à la dérivation de type, et OptionsAPI convient aux scénarios et débutants simples; 1. OptionsAPI organise le code en fonction d'options telles que les données et les méthodes, et a une structure claire mais les composants complexes sont fragmentés; 2. CompositionAPI utilise la configuration pour concentrer la logique liée, ce qui est propice à la maintenance et à la réutilisation; 3. CompositionAPI réalise la réutilisation logique sans conflit et paramétrisable par le biais de fonctions composables, ce qui est mieux que le mixin; 4. CompositionAPI a une meilleure prise en charge de la dérivation de type dactylographiée et de type plus précise; 5. Il n'y a pas de différence significative dans le volume de performances et d'emballage des deux; 6.

Le débogage des applications JavaScript complexes nécessite des outils d'utilisation systématiques. 1. Définissez des points d'arrêt et des points d'arrêt conditionnels pour intercepter les processus suspects, tels qu'avant l'entrée de la fonction, la boucle, le rappel asynchrone et le filtre en fonction des conditions; 2. Activer la fonction BlackBoxing pour bloquer les interférences de bibliothèque tierce; 3. Utiliser les déclarations du débogueur pour contrôler l'entrée de débogage en fonction du jugement environnemental; 4. Tracez le lien d'appel via CallStack, analysez le chemin d'exécution et l'état de la variable, localisez ainsi efficacement la cause profonde du problème.

Il existe une différence essentielle entre les travailleurs Web de JavaScript et Javathreads dans un traitement simultané. 1. JavaScript adopte un modèle unique. WebWorkers est un fil indépendant fourni par le navigateur. Il convient pour effectuer des tâches longues qui ne bloquent pas l'interface utilisateur, mais ne peuvent pas utiliser le DOM; 2. Java prend en charge le multithreading réel à partir du niveau de la langue, créé via la classe de threads, adapté à un traitement simultanée complexe et côté serveur; 3. Les travailleurs Web utilisent PostMessage () pour communiquer avec le fil principal, qui est hautement sécurisé et isolé; Les threads Java peuvent partager la mémoire, de sorte que les problèmes de synchronisation doivent être prêts à prêter attention; 4. Les travailleurs Web sont plus adaptés à l'informatique parallèle frontale, comme le traitement d'image, et

La coulée de type est le comportement de la conversion automatique d'un type de valeur en un autre type en JavaScript. Les scénarios courants incluent: 1. Lorsque vous utilisez des opérateurs, si un côté est une chaîne, l'autre côté sera également converti en une chaîne, comme '5' 5. Le résultat est "55"; 2. Dans le contexte booléen, les valeurs non cooliennes seront implicitement converties en types booléens, tels que des chaînes vides, 0, nuls, non définies, etc., qui sont considérées comme fausses; 3. Null participe aux opérations numériques et sera convertie en 0, et non défini sera converti en NAN; 4. Les problèmes causés par la conversion implicite peuvent être évitées grâce à des fonctions de conversion explicites telles que Number (), String () et Boolean (). La maîtrise de ces règles aide
