2017-04-19 2 views
1

Ich verwende das folgende SkriptErzwingen der Konturbereich und umgekehrt die Farbetiketten

set term pngcairo font ",18" enh size 1400,1400                                                
set view map                                                         
set key at screen 1, 0.9                                                      
unset surface                                                         
set contour base                                                        
set cntrparam levels incremental 0.00, 0.06, 2                                                
#                                                            
set linetype 2 lc rgb "#8F2FFF"                                                    
set linetype 3 lc rgb "#8F2FFF"                                                    
set linetype 4 lc rgb "#8F2FFF"                                                    
set linetype 5 lc rgb "#2F30FF"                                                    
set linetype 6 lc rgb "#2F30FF"                                                    
set linetype 7 lc rgb "#2F8EFF"                                                    
set linetype 8 lc rgb "#2F8EFF"                                                    
set linetype 9 lc rgb "#2FFFD6"                                                    
set linetype 10 lc rgb "#2FFFD6"                                                    
set linetype 11 lc rgb "#35FF2F"                                                    
set linetype 12 lc rgb "#35FF2F"                                                    
set linetype 13 lc rgb "#FEFF2F"                                                    
set linetype 14 lc rgb "#FEFF2F"                                                    
set linetype 15 lc rgb "#FFAF2F"                                                    
set linetype 16 lc rgb "#FFAF2F"                                                    
set linetype 17 lc rgb "#FF362F"                                                    
set linetype 18 lc rgb "#FF362F"                                                    
set xra[0.:12]                                                        
set yra[0.:12]                                                        
set xtics out nomirror                                                      
set ytics axis in offset -4.0,0 nomirror                                                  
set out "foo.png"                                                        
splot sin(x) * cos(y) w l lw 4 

der folgenden Abbildung zu erhalten enter image description here

jetzt Mein Problem ist, dass, obwohl ich habe set cntrparam levels incremental 0.00, 0.06, 2 ich noch gebraucht Holen Sie sich den maximalen Konturwert 0.96. Könnte mir jemand sagen wie ich Gnuplot erzwingen kann um den Konturbereich auf 2 zu fixieren. Die zweite Frage lautet: Ist es möglich, die Farbreihenfolge umzukehren, so dass sie von niedrigeren zu höheren Werten beginnt? Mit anderen Worten, ich möchte, dass gnuplot den Wert Null oben auf dem Etikett mit Magenta-Linie usw. bis zum höchsten Wert am unteren Rand des Etiketts mit der roten Linie anzeigt.

Antwort

2

Die Funktion sin(x)*cos(y) von oben begrenzt durch 1 so damit die maximale Kontur Ebene Sie erhalten 0,96 ist, da die nächsten 1,02 (mit Schritt von 0,06) sein würde, aber es gibt keine wirklichen Werte von x,y, die dazu entsprechen würden hypothetische Kontur.

Wie für die Reihenfolge der Titel in der Legende scheint set key invert hier keine Wirkung zu haben. Sie könnten jedoch auch nur die Reihenfolge umkehren, in der Gnuplot die Konturlinien konstruiert, das heißt, verwenden

set cntrparam levels incremental 0.96, -0.06, 0 
set isosamples 1000,1000 #to get smoother contours... 

statt set cntrparam levels incremental 0.00, 0.06, 2.

Verwandte Themen