Contour/imshow parcelle irrégulière X Y Z
J'ai des données en X, Y, Z format où tous sont des tableaux 1D, et Z est l'amplitude de mesure à coordonnées (X,Y). J'aimerais vous montrer ce que les données de contour ou "imshow complot" où les contours/couleur représente la valeur de Z (amplitude).
La grille pour les mesures et X et Y s'sont espacés de manière irrégulière.
Merci beaucoup,
len(X)=100
len(Y)=100
len(Z)=100
Éventuellement en double: stackoverflow.com/questions/3242382/...
votre tenté quelque chose? vous avez obtenu toutes les erreurs?
L'autre post, l'accent est mis principalement sur l'interpolation des données irrégulières en 2D. Je n'ai pas besoin/envie d'interpolation.
votre tenté quelque chose? vous avez obtenu toutes les erreurs?
L'autre post, l'accent est mis principalement sur l'interpolation des données irrégulières en 2D. Je n'ai pas besoin/envie d'interpolation.
OriginalL'auteur Scientist | 2014-11-18
Vous devez vous connecter pour publier un commentaire.
Ne
plt.tricontourf(x,y,z)
satisfaire vos exigences?Il sera tracé de contours pour irrégulièrement espacés de données (non rectiligne de la grille).
Vous pouvez également regarder dans
plt.tripcolor()
.lorsque j'utilise tripcolor et aussi avoir de la parcelle (aléatoire) des points, j'ai généré, je vois qu'il ne peut pas être plus précis: une bonne triangulation est faite, et ces plaques sont ensuite remplies sur la base des valeurs dans les nœuds de l'triangles.
Oliver, je vous remercie pour votre contribution. Je vais la pousser et voir si je peux ré-organiser les tableaux 1d, de sorte que le plt.le contour de l'utiliser.
il n'est pas nécessaire de réorganiser les valeurs de
plt.contour
. Il suffit de regardertricontourf
(comme illustré dans la figure) outricontour
(si vous n'aimez pas les contours).Pensé à une solution: Par l'augmentation de la "largeur" option dans tricontour, le lissage peut être atteint. Acclamations...
OriginalL'auteur Oliver W.
(Code Source @ la fin...)
Voici un peu de bonbons pour les yeux que j'ai produit à jouer avec un peu tout ça. Il explore le fait qu'une transformation linéaire d'un meshgrid est encore un meshgrid. I. e. sur la gauche de l'ensemble de mes parcelles, je suis en train de travailler avec des coordonnées X et Y pour un 2-d (entrée) de la fonction. Sur la droite, je veux travailler avec (AVG(X, Y), Y-X) coordonne pour la même fonction.
J'ai joué un peu avec meshgrids en natif les coordonnées et les transformer en meshgrids pour les autres coordonnées. Fonctionne très bien si la transformation est linéaire.
Pour les deux derniers graphiques, j'ai travaillé avec l'échantillonnage aléatoire pour répondre directement à votre question.
Voici les images avec
setlims=False
:Et la même chose avec
setlims=True
:OriginalL'auteur 8one6
N'est pas grave si ils sont espacés de manière irrégulière, le contour de la 3d et des parcelles nécessitent un meshgrid.
Êtes-vous sûr que vous ne voulez pas un lines3d intrigue? Ressemble plus à ce que vos données est construit pour
positive. J'ai besoin d'un tracé de contour. Quand je dis qu'ils sont des tableaux 1d, je ne dis pas que tous les éléments sont triés et représentent une ligne. x-y faire un nice-espacés de manière irrégulière - grille, chaque point ayant un correspondant de la valeur de Z.
Si Z est 1-D des données, il est tout simplement pas aller travailler sur un tracé de contour. Par définition, le contour des pots requre Z de valeurs d'une matrice 2d. Pensez-y, chaque valeur de votre point de contour doit exister à certains points x et y, donc elle doit être en 2d. Mais 3 1-d les lignes peuvent être tracées comme lines3d: matplotlib.org/mpl_toolkits/mplot3d/tutorial.html Sinon, vous allez avoir besoin de vos données Z en fonction de X et Y.
Ah je vois le drapeau tricolore de l'intrigue fonctionne pour ce type de données!
OriginalL'auteur Adam Hughes
Eh bien, si vous êtes prêt à s'écarter de Python dans son concurrent, R, j'ai juste remis un paquet à CRAN (qui devrait être disponible demain ou le jour suivant), qui conduit de contournement de sur la non-régulière des grilles -- le suivant peut être réalisé en quelques lignes de code:
Qui produit le texte suivant:
Si vous voulez une grille régulière, et ne peut se permettre un peu de temps de calcul:
Des bords flous ci-dessus, je sais comment le résoudre et devrait être corrigé pour la prochaine version du logiciel....
OriginalL'auteur Nicholas Hamilton