Salut,
J'ai un grand ensemble de données GPS sur route. Comment puis-je sélectionner les données qui se trouvent dans une limite donnée? (voir la pièce jointe, j'ai importé la limite à l'aide du complément ESRI to JMP)? Je sais que je peux le faire manuellement avec le Lasso mais je me demandais s'il y avait un moyen plus simple.
@shasheminassab ,
En supposant que vos fichiers de données ont la latitude et la longitude et que votre frontière est définie par une séquence de latitude et de longitude, il existe une fonction qui peut être utile appelée InPolygon (). Si votre fichier de données comporte de nombreux points, la méthode de force brute indiquée dans le script ci-dessous n'est probablement pas efficace.
Voici le script. L'image est illustrée ci-dessous et la sortie du journal montre que les points 2 et 3 sont dans la zone.
Names Default To Here( 1 );
xpt = [11 44 75];
ypt = [75 40 50];
New Window( "Example",
Graph Box(
Fill Color( "red" );
Polygon( [10 30 90], [88 22 44] );
Marker( Marker State( 3 ), xpt, ypt )
)
);
res={};
For(i=1, i<=ncol(xpt), i++,
if(InPolygon(xpt[1,i], ypt[1,i], [10 30 90], [88 22 44]), Insert into (res,xpt[1,i]*[1 0] + ypt[1,i]*[0 1] ) );
);
show(res);

Le journal affiche res = {[44 40], [75 50]};
Vous pourrez peut-être créer un fichier de carte où la sélection par zone nommée pourrait être plus facile. D'autres pourraient avoir des méthodes plus efficaces.
Si vous avez un gros fichier, je pourrais définir un rectangle qui délimite votre frontière pour filtrer rapidement les points qui ne se trouvent évidemment pas dans votre zone de frontière.
Ce sera intéressant de voir d'autres méthodes suggérées.