IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Filtrer un geojson


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    491
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 491
    Par défaut Filtrer un geojson
    Bonjour,

    J'ai un fichier geojson, pour chaque feature, j'ai des propriétés id et ts (en fait c'est un timestamp)
    Je voudrais filtrer le geojson, pour ne garder pour chaque valeur de id, uniquement le feature qui a la valeur max de ts pour cette valeur de id.

    J'ai trouvé quelques exemples de filtres comme ici, mais ils n'utilisent pas de fonction mathématiques sur les filtres.

    Comment faire?


    Merci,
    Nico

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2022
    Messages
    315
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2022
    Messages : 315
    Par défaut
    Bonjour,
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    async function getMostRecentIdsWithTimestamps(filePath) {
        try {
            // Lire le fichier JSON
            const response = await fetch(filePath);
            const data = await response.json();
     
            // Initialiser un objet pour suivre le timestamp le plus récent pour chaque ID
            const mostRecentTimestamps = {};
     
            // Parcourir les données pour trouver le timestamp le plus récent pour chaque ID
            data.forEach(entry => {
                const { id, timestamp } = entry;
                if (!mostRecentTimestamps[id] || timestamp > mostRecentTimestamps[id].timestamp) {
                    mostRecentTimestamps[id] = { id, timestamp };
                }
            });
     
            // Convertir l'objet en tableau de paires [id, timestamp] et retourner le tableau
            const mostRecentIdsWithTimestamps = Object.values(mostRecentTimestamps).map(entry => [entry.id, entry.timestamp]);
            return mostRecentIdsWithTimestamps;
        } catch (error) {
            console.error('Erreur lors de la lecture du fichier JSON:', error);
            return [];
        }
    }
     
    // Exemple d'utilisation de la fonction
    getMostRecentIdsWithTimestamps('geo.json').then(mostRecentIdsWithTimestamps => {
        console.log('Paires [id, timestamp] avec le timestamp le plus récent:', mostRecentIdsWithTimestamps);
    });
    Fichier Json :
    Code json : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    [
        {
            "id": 1,
            "timestamp": 1731485488485
        },
        {
            "id": 2,
            "timestamp": 1731485490000
        },
        {
            "id": 1,
            "timestamp": 1731485492000
        },
        {
            "id": 3,
            "timestamp": 1731485494000
        },
        {
            "id": 2,
            "timestamp": 1731485496000
        }
    ]

    Ca pourrait être cool de donné un minimum de data à utiliser parce que la ....

    Cdt

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [CR] Filtrer pour une période donnée
    Par liberio dans le forum SAP Crystal Reports
    Réponses: 6
    Dernier message: 21/04/2004, 16h32
  2. [JTextField] filtrer la saisie
    Par Merfolk dans le forum Composants
    Réponses: 7
    Dernier message: 04/03/2004, 19h57
  3. Filtrer les voyelles
    Par Babyneedle dans le forum Langage SQL
    Réponses: 9
    Dernier message: 22/12/2003, 15h12
  4. peut on filtrer les adresses IP ?
    Par travail dans le forum 4D
    Réponses: 2
    Dernier message: 04/06/2003, 14h16
  5. [VBA-E] [Excel] Filtrer le donnees d'une sheet
    Par donia dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 27/09/2002, 10h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo