Ho un file con quattro colonne di dati. Sto usando solo i primi tre per tracciare una trama 3D e non ho bisogno della quarta in questo momento.Utilizzo di Gnuplot per tracciare i colori dei punti in modo condizionale
Desidero sapere come modificare il colore di un punto se soddisfa determinate condizioni. Ad esempio, se i valori di un punto (x, y, z) sono superiori (16,400,65), voglio tracciare in grigio. Se sono minori, voglio usare il rosso.
Sto cercando di utilizzare lo awk
per lo stesso e traccia solo due punti di un colore diverso. Ecco il mio codice.
gnuplot>splot "< awk '{if(($2 > \"16\") || ($1 > \"400\") || ($3 > \"65\")) print}'
./8_77_non_pareto_data.dat " u 2:1:3 w p pt 8 lc rgb "grey", \
"< awk '{if(($2 < \"16\") || ($1 < \"400\") || ($3 < \"65\")) print}'
./8_77_non_pareto_data.dat " u 2:1:3 w p pt 8 lc rgb "red", \
"./8_77_pareto_data.dat" u 2:1:3 w i lt 1 lc rgb "blue" t "Pareto points"
mio file di dati aspetto:
48 15.057599573464184 68 361
93 14.950459657063462 73 361
48 14.065204842090914 69 361
280 13.16320458043516 69 361
120 15.05281009307949 66 361
48 15.133322961840786 59 361
48 16.161631503473544 73 361
470 17.763180586730847 77 361
asse X varia da 6 a 22.
intervalli dell'asse Y da 0 a 500.
gamme asse Z da 35 a 85.
Mi piacerebbe visualizzare questo come avere un riquadro di delimitazione intorno a (16,400,65) in modo tridimensionale. Qualsiasi cosa all'interno della scatola è rossa, qualsiasi cosa all'esterno è grigia.
Spero che qualcuno possa aiutarmi qui.
P.S: I punti blu stanno stampando bene e anche se qui i dati di esempio non mostrano alcune condizioni soddisfatte, ci sono punti che soddisfano tale condizione. Non ho pubblicato l'intero file qui.
caso uguaglianza:.. http://stackoverflow.com/questions/8717805/ variare-point-colore-in-gnuplot-ba sed-on-value-of-one-column –