warna garis kontur gnuplot: tetapkan garis gaya dan set linetype tidak berfungsi
Gnuplot Contour Line Color
Penyelesaian:
Inilah cara anda boleh mengubah sifat garis garis kontur. Saya tidak dapat menerangkan mengapa begitu, saya baru dapat mengetahuinya. Malangnya, tidak ada dokumentasi mengenai butiran ini.
Kelakuannya adalah seperti berikut (diuji dengan 4.6.3. Dan 4.7 (2013-07-25 dan 2013-09-09), semuanya menunjukkan tingkah laku yang sama):
Tetapan lalai
Jika tidak
linetype ditentukan untuk
splot, permukaan itu sendiri akan digunakan
1. Dalam kes itu, kontur pertama dilukis dengan
3. Ya, penomborannya mundur berbanding kenaikan yang ditentukan. Tetapi anda boleh membalikkannya dengan menggunakan
tetapkan kenaikan tahap cntrparam -6, -6, -18 atau
tetapkan kenaikan tahap cntrparam -18,6, -6
The
garis tengah semua kontur adalah sama dan juga sama dengan
linewidth digunakan untuk arahan ploting, untuk mengubahnya gunakan mis.
splot 'new_test.dat' lw 3.
Hasilnya (tanpa garis yang lebih tebal) adalah seperti yang ditunjukkan dalam soalan.
Menggunakan linestyles
Kontur menggunakan
gaya linen dengan indeks dengan satu yang lebih tinggi daripada yang digunakan oleh arahan plotting.
Anda juga mesti menentukan yang pertama
gaya linen, yang akan digunakan oleh permukaan. Sekiranya gaya ini tidak ditentukan, kontur akan kembali digunakan
linetype.
The
linewidth diambil dari yang pertama
gaya linen, semua
Tetapan dari berikut
Tidak diendahkan.
Menggunakan linetypes yang disesuaikan
Kontur menggunakan
linetype dengan indeks satu lebih tinggi daripada yang digunakan oleh arahan plotting.
Semua
linetype mesti disesuaikan, juga yang pertama, yang digunakan oleh permukaan. Jika tidak, tetapan lalai digunakan.
Sama seperti untuk
gaya rambut.
Untuk ujian, saya menggunakan data anda dan skrip yang dilucutkan berikut:
set semula set terminal pngcairo ukuran 800,800 set output '3d-polar.png' set lmargin pada layar 0,05 set rmargin pada layar 0,85 set bmargin pada layar 0,1 set tmargin pada layar 0,9 set peta pm3d interpolate 20,20 # plotkan peta peta panas set cntrparam bspline cntrparam poin 10 set cntrparam level increment -6, -6, -18 set kontur permukaan set palet rgb 33,13,10 set cbrange [-18: 0] unset border unset xtics unset ytics set sudut sudut darjah = 3.31 set xrange [- r: r] set yrange [-r: r] set asal pengguna kotak warna 0.9,0.1 ukuran 0.03,0.8 # muatkan salah satu fail berikut: #load 'linestyle.gp' #load 'linetype.gp' splot 'new_test.dat 'tajuk' 'Thecbrange ditakrifkan hanya hingga ke-18, jadi saya mengubah tahap kontur dengan sewajarnya (-24 tidak dilukis pula).
Dua 'fail tetapan kontur', yang saya gunakan adalah:
linetype.gp:
set linetype 1 lc rgb 'blue' lw 3 set linetype 2 lc rgb 'black' set linetype 3 lc rgb 'orange' set linetype 4 lc rgb 'kuning'linestyle.gp:
tetapkan pengguna kenaikan gaya
set gaya garis 1 lc rgb 'biru' lw 3 set gaya garis 2 lc rgb 'hitam' set gaya garis 3 lc rgb 'oren' set gaya garis 4 lc rgb 'kuning'Kedua-duanya memberikan gambar output yang sama:

Untuk menggunakan ini untuk skrip lengkap anda, muatkan salah satu daripada dua fail secara langsung sebelumarahan splot. Ini memberikan output:

Selepas soalan pertama anda mengenai kontur, saya hendak menghantar laporan pepijat, tetapi agak sukar untuk mengaitkannya dengan soalan konkrit. Dengan soalan ini mungkin lebih mudah. Saya akan melihat sekiranya saya mempunyai masa untuk melakukan ini.
Saya terpaksa merujuk kembali kepada soalan ini ketika saya sekali lagi melakukan plot GNUplot, kali ini dalam koordinat segi empat tepat, dan mendapati bahawa tidak dapat mengingat bagaimana mengawal jenis garis untuk garis kontur.
Saya mendapati bahawa maklumat di atas sekarang tidak begitu betul, dan saya telah menemui cara untuk menerangkan bagaimana ini berfungsi seperti pada GNUplot versi 5 patchlevel 3.
Terdapat tiga perkara yang saya dapati untuk mengawal garis kontur: 1. perintah 'set cntrparam level increment', dan 2. perintah 'set style increment user', dan 3. senarai gaya garis (saya menggunakan 'set style 'perintah)
Ternyata agak rumit. Izinkan saya memberikan satu atau dua contoh dari kod saya sendiri:
#CARA MENGENDALIKAN WARNA LINE DAN WIDTH UNTUK GARIS CONTOUR: #bilangan garis kontur dan tahapnya dikendalikan menggunakan perintah 'set cntrparam', di atas #set 'set cntrparam' mempunyai format 'start, increment, end' untuk kedudukan baris # perhatikan bahawa tahap akhir disenaraikan di bahagian atas kunci / legenda untuk baris! # gaya gaya 1 digunakan di tempat lain, bukan untuk garis kontur # gaya gaya 2 digunakan untuk gaya garis terakhir (mis. akhir, atau yang terakhir dilukis) # gaya gaya untuk baris lain bermula lebih jauh di bawah senarai gaya dan karya MENINGKATKAN gaya garis 2 #contoh 1: tiga garis pada -40, -30, dan -20 # tetapkan kenaikan tahap cntrparam -20, -10, -40 # garis gaya set 1 lw 0.5 lc 'grey30' # set gaya baris 2 lw 0.5 lc 'blue' # set style line 3 lw 0.5 lc 'white' # set style line 4 lw 0.5 lc 'red' # Ini menghasilkan: # -20 warna garis MERAH # -30 warna garis adalah PUTIH # -40 warna garis adalah BIRU # #contoh 2: empat garis pada -35, -30, -25, dan -20 # set kenaikan tahap cntrparam -20, -5, -35 # set gaya garis 1 lw 0,5 lc 'grey30' # set garis gaya 2 lw 0,5 lc 'biru' # set gaya garis 3 lw 0,5 lc 'putih' # set gaya garis 4 lw 0,5 lc 'merah' # set gaya garis 5 lw 0,5 lc 'kuning' # Ini menghasilkan: # -20 warna garis adalah KUNING # -25 warna garis MERAH # -30 warna garis adalah PUTIH # -35 warna garis adalah BIRUSaya berharap agar orang lain dapat menemukan ini berguna dan bermaklumat. Mungkin Christoph (sekiranya dia membaca topik ini) boleh memberi komen, kerana GNUplot adalah alat yang terus berkembang dan dia akan mengetahuinya secara terperinci.