2017-09-24 3 views
-1

En gnuplot, vous pouvez créer un histogramme commeune meilleure compréhension dans histogrammes Gnuplot

binwidth=#whatever# 
set boxwidth binwidth 
bin(x,width)=width*round(x/width) 
plot "gaussian.data" u (bin($1,binwidth)):(1.0/10000) smooth freq w boxes 

Ici, je suis intéressé par un histogramme de probabilité, d'où le 1.0/10000.

J'ai passé beaucoup de temps à lire la documentation gnuplot sur using et ce que je comprends est que je dis gnuplot pour tracer des données à partir gaussian.data en utilisant certaines valeurs pour la x et y. En fait, lorsque j'ouvre le fichier de données associé à la commande plot (obtenue en créant un fichier temporaire), je vois que les valeurs y sont 1/10000, comme prévu. Mais alors, les valeurs x et y changent. Il semble qu'il y ait quelque chose de dynamique à ce sujet. Je ne comprends pas très bien ce comportement de using. Quelqu'un pourrait-il me guider?

+0

Cela peut sembler une idée très folle, mais regardez dans la documentation de gnuplot. La fonction s (x) utilise l'opérateur d'évaluation en série C * * ",". – Karl

+0

J'ai lu la documentation plusieurs fois, mais je ne comprends toujours pas comment 'using' interprète' expressions'. Si vous pouviez élaborer, ce serait grandement apprécié. – Ptheguy

+0

Ne pas comprendre votre question. * en utilisant 1: 2 * lit les paires de valeurs des colonnes 1 et 2 pour chaque ligne de votre fichier. * en utilisant 1: (2) * renvoie la valeur y 2 pour chaque valeur de x lue dans la colonne 1 de votre fichier. Tout ce qui est entre parenthèses() est une expression et est évalué. – Karl

Répondre