Alors que les systèmes commerciaux continuent d'améliorer leurs capacités de traitement des données, les développeurs doivent souvent présenter un contenu de données structuré et énorme sur le front-end. Surtout lorsque l'on fait face à des informations statistiques telles que les ventes mensuelles et les tendances d'accès, comment rendre les graphiques frontaux clairement présents tout en garantissant que les performances sont devenues un problème central. Cet article présentera comment combiner l'interface de données back-end PHP avec le cadre frontal Vue.js et coopérer avec la bibliothèque graphique.js pour créer des graphiques de statistiques de Big Data réactifs.
Avant de commencer le codage, assurez-vous que votre environnement de développement remplit les conditions suivantes:
Chart.js est une bibliothèque de graphiques HTML5 flexible. Dans cet article, nous l'avons introduit via CDN:
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
Dans l'exemple, nous interrogeons les enregistrements de vente à partir de la base de données et faisons les résultats de JSON pour l'appel frontal:
// Connectez-vous à la base de données
$conn = new mysqli($servername, $username, $password, $dbname);
// Vérifiez la connexion
if ($conn->connect_error) {
die("Échec de la connexion: " . $conn->connect_error);
}
// Vérifiez le total des ventes mensuelles
$sql = "SELECT SUM(amount) AS total_amount, MONTH(date) AS month FROM sales GROUP BY MONTH(date)";
$result = $conn->query($sql);
// Construire un tableau de résultat
$data = [];
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
$data[] = $row;
}
}
// SortirJSONdonnées
echo json_encode($data);
Vue.js est chargé d'obtenir des données à partir du backend PHP et des graphiques de rendu. Ce qui suit est une implémentation de composants typique:
<template>
<div>
<canvas id="chart"></canvas>
</div>
</template>
<script>
import axios from 'axios';
export default {
mounted() {
axios.get('http://localhost/api/sales.php')
.then((response) => {
this.createChart(response.data);
})
.catch((error) => {
console.error(error);
});
},
methods: {
createChart(data) {
const labels = data.map(item => item.month);
const values = data.map(item => item.total_amount);
new Chart('chart', {
type: 'bar',
data: {
labels,
datasets: [{
label: 'Ventes totales',
data: values,
backgroundColor: 'rgba(75, 192, 192, 0.2)',
borderColor: 'rgba(75, 192, 192, 1)',
borderWidth: 1
}]
},
options: {
scales: {
y: {
beginAtZero: true
}
}
}
});
}
}
}
</script>
<p>
Afin d'améliorer encore l'efficacité du rendu des graphiques dans les scénarios de Big Data, les stratégies suivantes peuvent être combinées:
En combinant les puissantes capacités de traitement des données de PHP avec les composants frontaux flexibles de Vue.js, et combiné avec des graphiques visuels Chart.js, nous pouvons facilement répondre aux besoins d'affichage graphique des grands ensembles de données. Cette méthode est particulièrement pratique dans le commerce électronique, l'analyse financière, le suivi du comportement des utilisateurs et d'autres scénarios. J'espère que ce tutoriel aidera votre projet.