gnuplot parcelle différence de 2 colonnes
J'ai deux fichiers A et B. les Deux fichiers contiennent des 2 colonnes x et y.
Maintenant, je veux tracer un graphique pour x vs (yA - yB). Ne gnuplot fournir une commande pour la même ?
Une chose de plus, permet de dire que xA et xB sont pas les mêmes. Comment dois-je tracer un graphique où l'axe x contient tous les éléments qui sont dans les deux cas, xA et xB et l'axe y est, la différence est la correspondante de y-composants ?
Sont le xA et xB articles toujours exactement correspondance, vers le bas pour les personnages? Ou peut 5.0000 être fusionné avec 5.0001?
ils sont exactement les mêmes. la colonne de fusion est un entier non signé.
"tous les éléments qui sont à la fois" -- Ce qui (pour moi) est ambigu. Voulez-vous l'union ou l'intersection? Il semble que vous voulez l'intersection, mais au cas où vous vouliez l'union j'ai fourni une solution pour que ci-dessous.
ils sont exactement les mêmes. la colonne de fusion est un entier non signé.
"tous les éléments qui sont à la fois" -- Ce qui (pour moi) est ambigu. Voulez-vous l'union ou l'intersection? Il semble que vous voulez l'intersection, mais au cas où vous vouliez l'union j'ai fourni une solution pour que ci-dessous.
OriginalL'auteur prathmesh.kallurkar | 2012-05-22
Vous devez vous connecter pour publier un commentaire.
D'abord, prétraiter les fichiers avec
join
dans bash:Trier les fichiers est essentiel, sinon
join
ne fonctionnerait pas.Ensuite, vous pouvez utiliser le résultat pour dessiner le graphe:
De nouveau, numérique de tri est nécessaire ici, car
join
utilise le tri alphanumérique qui rend les lignes se croisent les uns les autres.Malheureusement,
join
besoins tri alphanumérique (comme déjà mentionné). Essayer pour voir. Si il n'y a aucune complication, je voudrais aussi atteindre pour les plus avancés de langue (Perl dans mon cas).OriginalL'auteur choroba
Je pense que cela pourrait être un bon travail pour
paste
.Pour le fichier où xA != xB, je suis un peu difficile de savoir si vous voulez tracer seulement l'ensemble des points sont communs aux deux (l'intersection des deux ensembles) ou si vous voulez tracer tous les points (l'union des ensembles). L'union est facile:
L'intersection est dur en utilisant uniquement des outils en ligne de commande unix (surtout si vous voulez conserver l'ordre de votre entrée)
à l'aide de Python, mais cependant, il n'est pas trop mauvais...
et puis, à partir de gnuplot:
OriginalL'auteur mgilson