2013-02-20 16 views
9

Jestem nowy gnuplot i próbuję ustalić mina nd max z pliku danych, a następnie wykreślić daneUstal min i max w gnuplot

Do tej pory udało mi się ustalić min i max tak:

# Define two helper functions 
ismin(x) = (x<min)?min=x:0 
ismax(x) = (x>max)?max=x:0 

# Initialise the 'global' vars 
max=-1e38 
min=1e38 

plot "Data.txt" u 0:(ismin($3)*ismax($3)) 

Problem polega na tym, że próbuję wykreślić dane za pomocą splotu, a to nie działa.

próbuję to:

splot \ 
'Data.txt' u 2:1:3 with pm3d t '',\ 

Jeśli usunąć część związaną ustalania min i max, prace poleceń SPLOT.

Wszelkie sugestie?

+0

Możliwy duplikat [gnuplot: wartości maksymalne i minimalne w zakresie] (https://stackoverflow.com/questions/13580236/gnuplot-max-and-min-values-in-a-range) –

Odpowiedz

14

Spójrz na komendę stats:

stats 'datafile' using 3 

na przykład dostanie statystyki na 3 kolumny danych (Z) i przechowywać je w zmiennych (STATS_min i STATS_max może być to, co chcesz). Aby wyświetlić wszystkie utworzone zmienne, po uruchomieniu stats wpisz po . Jeśli masz starszą wersję gnuplot bez stats, możesz wykreślić plik bez tworzenia wyjścia, a gnuplot automatycznie definiuje niektóre zmienne prefiksowane DATA_, w tym min/max. Komenda stats oszczędza kłopot podczas definiowania pustego wyjścia, aby uzyskać dane przed wydrukowaniem.

+0

świetne .. dzięki ... Szukałem tego. Gnuplot 4.6 dodał naprawdę świetne funkcje ... – Abhinav

Powiązane problemy