Maison  >  Article  >  développement back-end  >  Comment analyser et visualiser les données épidémiques en PHP ?

Comment analyser et visualiser les données épidémiques en PHP ?

王林
王林original
2023-05-21 08:40:451367parcourir

L'analyse et la visualisation des données épidémiques ont toujours été un sujet qui a retenu l'attention pendant l'épidémie. Lors de l'analyse et de la visualisation des données épidémiques en PHP, vous pouvez non seulement obtenir les dernières données épidémiques, mais également analyser et afficher les données via des outils de visualisation de données pour comprendre plus intuitivement la tendance de développement de l'épidémie.

Cet article présentera brièvement comment obtenir les dernières données épidémiques en PHP et comment utiliser les outils courants de visualisation de données pour analyser et afficher les données.

1. Obtention des données épidémiques

L'obtention des dernières données épidémiques peut être obtenue grâce aux robots d'exploration Web. Lors de l'exploration des données, vous devez faire attention à certaines méthodes anti-exploration courantes. Vous pouvez utiliser des techniques simples, telles que la définition d'en-têtes de requête d'exploration et la simulation de connexions, pour éviter l'anti-exploration.

Il existe de nombreuses façons d'obtenir des données épidémiques. Prenons l'exemple de l'exploration du site officiel de Dingxiangyuan (https://ncov.dxy.cn) pour présenter comment utiliser PHP pour obtenir les dernières données épidémiques.

Les étapes spécifiques sont les suivantes :

1. Utilisez CURL pour envoyer une requête HTTP et enregistrez le résultat de la réponse sous forme de chaîne.

function get_html($url){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($ch);
    curl_close($ch);
    return $output;
}

$html = get_html('https://ncov.dxy.cn/ncovh5/view/pneumonia');

2. Utilisez des expressions régulières pour faire correspondre les données requises.

$pattern = '/<script id="getListByCountryTypeService2">(.*?)</script>/si';
preg_match($pattern, $html, $matches);
$matches_str = $matches[1];

3. Convertissez la chaîne correspondante en un tableau PHP.

$matches_str = str_replace('toArray(', '', $matches_str);
$matches_str = str_replace(')', '', $matches_str);
$data_array = json_decode($matches_str, true);

2. Visualisation des données

Après avoir obtenu les données épidémiques, vous pouvez utiliser des outils courants de visualisation de données pour analyser et afficher les données. Echarts est utilisé ici comme outil de visualisation de données.

Echarts est une bibliothèque de visualisation de données JavaScript qui prend en charge plusieurs types de graphiques, notamment les graphiques linéaires, les graphiques à barres, les diagrammes circulaires, etc. Echarts prend en charge l'intégration avec PHP. Il vous suffit de convertir le tableau PHP au format JSON et de le transmettre au front-end.

Voici le processus de mise en œuvre spécifique.

1. Introduisez la bibliothèque Echarts dans la page HTML.

<script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script>

2. Utilisez le tableau PHP pour générer des données au format JSON.

$data = [];
foreach ($data_array as $item) {
    $data[] = [
        'name' => $item['provinceName'],
        'value' => $item['confirmedCount']
    ];
}
$json_data = json_encode($data);

3. Utilisez le code JavaScript pour transmettre les données au format JSON à Echarts et générer des graphiques visuels de type carte.

<script type="text/javascript">
    var myChart = echarts.init(document.getElementById('map'));

    var option = {
        visualMap: {
            min: 0,
            max: 80000,
            left: 'left',
            top: 'bottom',
            text: ['高', '低'],
            calculable: true
        },
        toolbox: {
            show: true,
            orient: 'vertical',
            left: 'right',
            top: 'center',
            feature: {
                dataView: {readOnly: false},
                restore: {},
                saveAsImage: {}
            }
        },
        series: [
            {
                name: '确诊人数',
                type: 'map',
                mapType: 'china',
                roam: false,
                label: {
                    normal: {
                        show: true
                    },
                    emphasis: {
                        show: true
                    }
                },
                data:<?php echo $json_data; ?>
            }
        ]
    };

    myChart.setOption(option);
</script>

Ce code générera un graphique de visualisation de type carte de la Chine montrant le nombre de cas confirmés dans chaque province.

3. Résumé

Grâce à la méthode ci-dessus, nous pouvons facilement obtenir les dernières données épidémiques en PHP et utiliser des outils de visualisation de données tels que Echarts pour analyser et afficher les données. Ces outils peuvent nous aider à comprendre la tendance de développement de l’épidémie de manière plus intuitive et fournir un solide support de données pour la prévention et le contrôle de l’épidémie.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn