Несколько ключевых заголовков и разбиение легенд в Gnuplot - PullRequest
0 голосов
/ 29 сентября 2019

Ниже приведен простой код Gnuplot для построения нескольких наборов данных

set terminal postscript eps enhanced colour font 'Times-Roman,12' size 4in,4in  
set output "UCl3-AgCl.eps"
set style line 1 lt 2 lw 4 lc rgb "red"
set style line 2 lt 3 lw 4 lc rgb "dark-green"
set style line 3 lt 4 lw 4 lc rgb "blue"
set style line 4 lt 5 lw 4 lc rgb "orange"
set style line 5 lt 6 lw 4 lc rgb "dark-magenta"

set xtics out scale 1.5 
set ytics out scale 1.5
set tics font ", 14"
set xlabel "Temperature" font "Times-Bold,16"
set ylabel "Potential vs. Ag^{+}|Ag (V)" font "Times-Bold,16"
set key inside left bottom  
set key samplen 5 spacing 1.5 font "Times-Bold,14" width -1.0
set yrange [-1.25:-1.55]

plot [660:820] 'UCl3-AgCl.dat' u 1:2 title "1 wt.% UCl_{3}" with points lt -1 pt 1 ps 1.4, \
'UCl3-AgCl.dat' u 3:4 title "2 wt.% UCl_{3}" with points lt -1 pt 2 ps 1.4, \
'UCl3-AgCl.dat' u 5:6 title "3 wt.% UCl_{3}" with points lt -1 pt 3 ps 1.4, \
'UCl3-AgCl.dat' u 7:8 title "1 wt.% UCl_{3}" with points lt -1 pt 1 ps 1.4, \
'UCl3-AgCl.dat' u 9:10 title "2 wt.% UCl_{3}" with points lt -1 pt 2 ps 1.4, \
'UCl3-AgCl.dat' u 1:2 title "3 wt.% UCl_{3}" with points lt -1 pt 3 ps 1.4

Файл данных прикреплен

# EMF data of UCl3 in LiCl-KCl eutectic melt
# using 1 and 5 wt.% AgCl 
# Composition of UCl3: 1, 2 and 3 wt.% UCl3 
# Data set 1: 1 wt.% AgCl 
# Col 1: T1(K) Col 2: EMF1 ( 1 wt.% UCl3), Col 3: T2(K), Col 4: EMF2 (2 wt.% UCl3), Col 5: T3(K), Col 6: EMF3 (3 wt.% UCl3) 
# Data set 2: 5 wt.% AgCl 
# Col 7: T1(K) Col 8: EMF1 ( 1 wt.% UCl3), Col 9: T2(K), Col 10: EMF2 (2 wt.% UCl3), Col 11: T3(K), Col 12: EMF3 (3 wt.% UCl3) 
693   -1.4061   693   -1.3889    673   -1.4061      693   -1.5227    693   -1.5089      673    -1.5232
673   -1.4202   673   -1.4013    699   -1.3812      673   -1.5320    673   -1.5235      699    -1.4990
703   -1.3989   699   -1.3859    713   -1.3671      703   -1.5181    699   -1.5057      713    -1.4920
713   -1.3918   703   -1.3801    683   -1.3947      713   -1.5134    703   -1.5022      683    -1.5144
683   -1.4135   713   -1.3725    723   -1.3592      683   -1.5278    713   -1.4970      723    -1.4812
723   -1.3854   683   -1.3992    734   -1.3509      723   -1.5064    683   -1.5169      734    -1.4732
734   -1.3785   723   -1.3700    743   -1.3470      734   -1.5041    723   -1.4949      743    -1.4670
743   -1.3702   734   -1.3635    749   -1.3387      743   -1.4983    734   -1.4949      749    -1.4629
754   -1.3632   743   -1.3559    754   -1.3394      754   -1.4937    743   -1.4849      754    -1.4574
773   -1.3509   749   -1.3481    773   -1.3086      773   -1.4846    749   -1.4791      773    -1.4363
783   -1.3437   754   -1.3475    789   -1.2969      783   -1.4797    754   -1.4794      789    -1.4267
                764   -1.3405                                        764   -1.4746
                773   -1.3332                                        773   -1.4689
                783   -1.3348                                        783   -1.4712
                789   -1.3270                                        789   -1.4651
                799   -1.3217                                        799   -1.4620

Теперь я хочу иметь два разных ключа;один для первых трех наборов данных и другой для последних трех наборов данных. Это должно быть что-то вроде

{/Times-Italic x}_{AgCl} = 1 wt.% 
1 wt.% UCl_{3}
2 wt.% UCl_{3}
3 wt.% UCl_{3}

{/Times-Italic x}_{AgCl} = 5 wt.% 
1 wt.% UCl_{3}
2 wt.% UCl_{3}
3 wt.% UCl_{3}

Это может быть либо один под другим, либо рядом друг с другом. Как можно соответствующим образом изменить код? Спасибо,

1 Ответ

0 голосов
/ 29 сентября 2019

Отметьте help keyentry, с помощью keyentry вы можете добавить несколько дополнительных линий без каких-либо графиков. Если вы не хотите отображать символ, установите размер точек равным нулю.

Имейте в виду, у вас есть данные, в которых некоторые столбцы длиннее других. Если у вас есть пробел в качестве разделителя, gnuplot не распознает столбцы, как вы ожидаете. Итак, либо убедитесь, что ваш разделитель является вкладкой ("\t"). Я думаю, StackOverflow конвертирует "\t" в пространство. В качестве альтернативы, вставьте какой-нибудь символ, например, ?, чтобы прояснить, что такое столбцы.

Кстати, вам не нужно вводить UCl-AgCl.dat 6 раз, достаточно 1 раз, '' строит графики из последнего использованного файла.

Изображение ниже - из wxt-терминала, созданного с помощью gnuplot 5.2.6.

Данные: UCl3-AgCl.dat

# EMF data of UCl3 in LiCl-KCl eutectic melt
# using 1 and 5 wt.% AgCl 
# Composition of UCl3: 1, 2 and 3 wt.% UCl3 
# Data set 1: 1 wt.% AgCl 
# Col 1: T1(K) Col 2: EMF1 ( 1 wt.% UCl3), Col 3: T2(K), Col 4: EMF2 (2 wt.% UCl3), Col 5: T3(K), Col 6: EMF3 (3 wt.% UCl3) 
# Data set 2: 5 wt.% AgCl 
# Col 7: T1(K) Col 8: EMF1 ( 1 wt.% UCl3), Col 9: T2(K), Col 10: EMF2 (2 wt.% UCl3), Col 11: T3(K), Col 12: EMF3 (3 wt.% UCl3) 
693   -1.4061   693   -1.3889    673   -1.4061      693   -1.5227    693   -1.5089      673    -1.5232
673   -1.4202   673   -1.4013    699   -1.3812      673   -1.5320    673   -1.5235      699    -1.4990
703   -1.3989   699   -1.3859    713   -1.3671      703   -1.5181    699   -1.5057      713    -1.4920
713   -1.3918   703   -1.3801    683   -1.3947      713   -1.5134    703   -1.5022      683    -1.5144
683   -1.4135   713   -1.3725    723   -1.3592      683   -1.5278    713   -1.4970      723    -1.4812
723   -1.3854   683   -1.3992    734   -1.3509      723   -1.5064    683   -1.5169      734    -1.4732
734   -1.3785   723   -1.3700    743   -1.3470      734   -1.5041    723   -1.4949      743    -1.4670
743   -1.3702   734   -1.3635    749   -1.3387      743   -1.4983    734   -1.4949      749    -1.4629
754   -1.3632   743   -1.3559    754   -1.3394      754   -1.4937    743   -1.4849      754    -1.4574
773   -1.3509   749   -1.3481    773   -1.3086      773   -1.4846    749   -1.4791      773    -1.4363
783   -1.3437   754   -1.3475    789   -1.2969      783   -1.4797    754   -1.4794      789    -1.4267
  ?         ?   764   -1.3405      ?         ?        ?         ?    764   -1.4746        ?          ?
  ?         ?   773   -1.3332      ?         ?        ?         ?    773   -1.4689        ?          ?
  ?         ?   783   -1.3348      ?         ?        ?         ?    783   -1.4712        ?          ?
  ?         ?   789   -1.3270      ?         ?        ?         ?    789   -1.4651        ?          ?
  ?         ?   799   -1.3217      ?         ?        ?         ?    799   -1.4620        ?          ?

код:

### "split" key
reset session

# set terminal postscript eps enhanced colour font 'Times-Roman,12' size 4in,4in  
# set output "UCl3-AgCl.eps"
set style line 1 lt 2 lw 4 lc rgb "red"
set style line 2 lt 3 lw 4 lc rgb "dark-green"
set style line 3 lt 4 lw 4 lc rgb "blue"
set style line 4 lt 5 lw 4 lc rgb "orange"
set style line 5 lt 6 lw 4 lc rgb "dark-magenta"

set xtics out scale 1.5 
set ytics out scale 1.5
set tics font ", 14"
set xlabel "Temperature" font "Times-Bold,16"
set ylabel "Potential vs. Ag^{+}|Ag (V)" font "Times-Bold,16"
set key inside left bottom  
set key samplen 5 spacing 1.5 font "Times-Bold,12" width -1.0
set yrange [-1.25:-1.55]

plot [660:820] \
    keyentry w p ps 0 ti "{/Times-Italic x}_{AgCl} = 1 wt.% ", \
    'UCl3-AgCl.dat' u 1:2 ti "1 wt.% UCl_{3}" w lp lt 1 pt 1 ps 1.4, \
    '' u 3:4 ti "2 wt.% UCl_{3}" w lp lt 2 pt 2 ps 1.4, \
    '' u 5:6 ti "3 wt.% UCl_{3}" w lp lt 3 pt 3 ps 1.4, \
    keyentry w p ps 0 ti "{/Times-Italic x}_{AgCl} = 5 wt.% ", \
    '' u 7:8 ti "1 wt.% UCl_{3}" w lp lt 4 pt 1 ps 1.4, \
    '' u 9:10 ti "2 wt.% UCl_{3}" w lp lt 5 pt 2 ps 1.4, \
    '' u 11:12 ti "3 wt.% UCl_{3}" w lp lt 6 pt 3 ps 1.4

set output
### end of code

Результат:

enter image description here

...