gnuplot rgb什么意思
发布网友
发布时间:2022-04-25 20:52
我来回答
共1个回答
热心网友
时间:2022-04-12 11:33
0. 运行脚本
0.1 把代码写在一个文件file中gnuplot file就可以了(曾经在电脑上这样运行有问题,不知道为什么自动好了……)
0.2 Shell 脚本运行[1]一个简单范例:==============#! /bin/sh DATE=$(date '+%d-%m-%Y-%Hh%Mm%S') gnuplot <<EOFset term postscript landscape set output '${DATE}.ps' set xrange[1:10]plot x EOF==============注:注意脚本每行末尾不要留空格,不然常会报错。(血泪亲测555)比如EOF之后如果存在空格,上述脚本出现这样的错误信息:./test: line 10: warning: here-document at line 5 delimited by end-of-file (wanted `EOF')gnuplot> EOF ^ line 0: invalid command1. 设置输出格式PS格式:彩色(推荐使用):set term postscript enhanced colorset output "*.ps"另:(未测)set term postscript landscapeset output "*.ps"EPS格式:黑白(曲线类型控制未知):set term postscript eps enhancedset output "*.eps"忘了是啥:set term post eps color solid enhset output "*.eps"PNG格式:set terminal png size 1500,1000 enhanced font "Helvetica,20"set output '*.png'PDF格式需要装有ps2pdf,然后:set term postscript enhanced colorset output "| ps2pdf - *.pdf"注:关于pdf图片,输出后周围的大片空白可以在终端中使用如下命令去除 [5]:pdfcrop *.pdf会生成一个新文件: *-crop.pdf使用此pdf文件在Latex等处都将十分整洁方便,妈妈再也不用担心我的图片了。2. 图片设置2.1 设置图片/字体大小set size 0.6,0.6字体大小设置比较复杂,此命令是按比例缩放图片大小,字体大小不变,相当于字体相对变大。2.2 设置/取消命名(位于图上方)set title "figurename""unset title注:在多图设置(见8小节)中,命名命令对其后所有图生效,要在每个图中重新命名。之后不需要命名时要记得取消。3. 设置/取消背景网格set grinset grid如果网格为极坐标系,则set grid polar4. 设置图注4.1 图注在图中的位置set key left/right top/bottom/center4.2 图注增加/取消外框set/unset key box4.3 图注间距set key spacing 1.54.4 图注位于图外set key lmargin/rmargin/tmargin/bmargin(below)4.5 取消图注unset key4.6 图注设置参数一览:set key {on|off} {default} {{inside | outside} | {lmargin | rmargin | tmargin | bmargin} | {at <position>}} {left | right | center} {top | bottom | center} {vertical | horizontal} {Left | Right} {{no}reverse} {{no}invert} {samplen <sample_length>} {spacing <vertical_spacing>} {width <width_increment>} {height <height_increment>} {{no}autotitle {columnheader}} {title "<text>"} {{no}enhanced} {{no}box { {linestyle | ls <line_style>} | {linetype | lt <line_type>} {linewidth | lw <line_width>}}} unset key show key5. 设置坐标轴5.1 设置坐标轴范围5.1.1 设置给定坐标轴范围[4]set xrange/yrange [1:100]也可以设置负向坐标set xrange/yrange [100:1]只设置一端坐标(另一端将自动调整)set xrange/yrange [:100]5.1.2 恢复自动坐标轴范围(此时人工给定设置依然保留)set auto x/y5.1.3 恢复给定坐标轴范围set noauto x/y注:关于 set [no]auto x/y 与 reset (见n.3小节) 的测试,可参考网址[2]5.2 设置/取消坐标名称set xlabel/ylabel "name"unset xlabel/ylabel5.3 设置坐标轴标识5.3.1设置坐标轴最大间隔(显示数值)set xtics/ytics 0.55.3.2 设置坐标轴小间隔set mxtics/mytics 2说明:将每个大间隔平分为2份5.3.3 设置标识文本显示倾斜度set xtics rotate by -45说明:标识右倾45度5.4 设置指数坐标轴set log x/yset xtics 1.5说明:设置指数坐标轴的间隔时,数字代表10的指数(待明)。注意此时坐标的值域必须大于0。5.5 移动坐标标记set x/ytics [out] offset 1,1"1,1" 为对应的移动向量的x,y值。(未验证)6. 作图-曲线6.1 从数据作图6.1.1 从不同数据文件作图plot "1p.dat" u 1:2 w lp lt 1 pt 1 lc 1 lw 3 title "1", \"2p.dat" u 1:2 w lp lt 1 pt 2 lc 7 lw 3 title "2", \"3p.dat" u 1:2 w lp lt 1 pt 3 lc 3 lw 3 title "3", \"4p.dat" u 1:2 w lp lt 1 pt 4 lc 4 lw 3 title "4"说明:u 1:2 =使用*.dat文件中的1,2列作为x,y作图;w lp =with line and points,作曲线并标出数据点;w l =with line,只作出曲线;w p =with points,只作数据点;这些似乎可以在plot之前通过一行命令整体设置:set style data linespoints(待测)ls=linestyle 可自己设置,通过:set linestyle 1 lt 1 lc 2 lw 3lt =line type, 曲线类型。已定义,见图片;pt = point type, 描点类型。已定义,见⋯⋯;lc =line color, 曲线颜色。已定义,见图片;也可使用rgb数值:lc rgb "#00FF00"lw =line width, 曲线宽度。按数值依次增大;title 可简写做 ti ;使用数据所在列的抬头做title:title columnheader(n)n 代表第n列;如果不需要曲线名称,使用 notitle;plot "*.dat" u 1:2 notitle使用"\"分行,使代码更工整。6.1.2 从同一个数据文件作图plot "1p.dat" u 1:2 w l ti "col2", \"1p.dat" u 1:3 w l ti "col3"可简写为:plot "1p.dat" u 1:2 w l ti "col2", \" " u 1:3 w l ti "col3"(可写做:" " u 3 w l ti "col3" 吗?待测)6.1.3 作图命令内部循环 (待亲测!)plot 'dat.dat' u 2:xtic(1) title columnheader(2), \for [i=3:22] ' ' u i title columnheader(i)6.1.4 读取数据gnuplot默认数据分割符号是空格。如果文件中用逗号分割数据,可在gnuplot中使用如下命令:set datafile separator ","6.2 函数作图6.2.1 定义常量a=36.2.2 定义函数:6.2.2.1 简单定义f(x)=ax函数范例:f(x)=(1.58*log(x)-3.28)**(-2.)s(x)=0.1384*x**(-0.273)*a**(0.0782)*(2./a)**(0.253)说明:**代表幂指数数据写做“2”代表整型,“2.”代表浮点型。会影响计算结果的精度。(批:这些规矩似乎和 Fortran 一致)6.2.2.1 定义函数在特定区间上有效[3]使用 “?” 以及 “1/0”f(x) = ( 0 < x && x < 1 ) ? sin(x) : 1/06.2.3 直接作函数图plot (1.58*log(x)-3.28)**(-2.)6.2.4 使用已定义函数作图plot f(x)6.3 重新做前一个图replot6.4 双x/y坐标轴set x2/y2ticsset x2/y2range[nb1:nb2]plot … axes x1y2或者 x2y2, 任意。7. 在特定位置放置标签7.1 位置坐标依照坐标轴set label "(0,0) first" at first 0, first 07.2 位置坐标依照画图区域(图域左下角为(0,0))set label "(0,0) graph" at graph 0, graph 07.3 位置坐标依照整个图片(图片左下角为(0,0))set label "(0,0) screen" at screen 0, screen 0注:效果等于set label "(0,0) screen" 0, 08. 多图设置使用范例说明如下:此为四小图横向排列。set multiplot说明:多图设置开始set size 0.27,1说明:定义每张小图的尺寸。可在每张小图开始前分别设置。set origin -0.005,0说明:设置图1的起始位置。以左下角坐标为准。plot "*line1.dat" u 1:2 w lp title "line1"set origin 0.24,0说明:设置图2的起始位置。plot "line2.dat" u 1:2 w lp title "line2"set origin 0.485,0说明:设置图3的起始位置。plot "line3.dat" u 1:2 w lp title "line3"set origin 0.73,0说明:设置图4的起始位置。plot "line4.dat" u 1:2 w lp title "line4"unset multiplot说明:多图设置结束注:不仅限于做并列放置的图。需要在大图中做小图时,也是采用此方法。9. 利用gnuplot作Fourier变换(fft)可以吗???10. 作直方图 (histogram)set style fill solid 1.00 border 0说明:或者border -1, 暂时不清楚作用……set boxwidth 0.9 absolute说明:设置方柱宽度set style histogramset style data histogram (or 'histograms')set style histogram clustered gap 1 title offset character 0, 0, 0 说明:不清楚……plot 'dat.dat' u 2:xtic(1) ti col lc 1注意:此处x,y的顺序是相反的。更多绚例请见[8]11. 数学公式书写11.1 上下标上标:U^{upper}下标:U_{lower}说明:下标上标类似其他科学软件(如Latex)中数学公式之表达。11.2 各种符号点乘符号multiplication dot:"{/Symbol \327}"示例[6]:t = "{/Symbol \327}" # multiplication dotset xtics ("-3".t."10^3" -3e3, "-2".t."10^3" -2e3, "-10^3" -1e3, "0" 0, \ "10^3" 1e3, "2 10^3" 2e3, "3 10^3" 3e3)其他符号陆续更新……11.3 数字格式set format x "%10.3f"引号中格式参见[7] “How do I change the format of the numbers ?”。n. 其他事项n.1 注释使用符号"#"。用在最后一行plot的曲线时,貌似会有警告提示。n.2 恢复设置reset注:似乎是将所有设置清零(未测试)n.3 退出gnuplotquit============== temple 1 ============================单图设置范例 ===================================================set term postscript enhanced colorset output "temple1.ps"set size 0.6,0.6set gridset key right topset key boxset key spacing 1.5set xrange [0:100]set yrange [0:100]set xlabel "xlabel"set ylabel "ylabel"set xtics 10set ytics 10set mxtics 5set mytics 5plot "1.dat" u 1:2 w l lt 1 lc 1 lw 3 title "1", \"2.dat" u 1:2 w l lt 1 lc 7 lw 3 title "2", \"3.dat" u 1:2 w l lt 1 lc 3 lw 3 title "3", \"4.dat" u 1:2 w l lt 1 lc 4 lw 3 title "4",\"1p.dat" u 1:2 w lp lt 1 pt 1 lc 1 lw 3 title "1", \"2p.dat" u 1:2 w lp lt 1 pt 2 lc 7 lw 3 title "2", \"3p.dat" u 1:2 w lp lt 1 pt 3 lc 3 lw 3 title "3", \"4p.dat" u 1:2 w lp lt 1 pt 4 lc 4 lw 3 title "4"============ temple 2 ============================ 多图设置范例。只保留了图1中的y坐标名称。==================================================set term postscript enhanced colorset output "temple2.ps"set multiplotset key left centerset key boxset key spacing 1.5set xrange [0:100]set yrange [0:100]set xlabel "u_average[m/s]"set ylabel "y[m]"set xtics 10set ytics 10set mxtics 5set mytics 5set size 0.27,1set origin -0.005,0plot "1.dat" u 1:2 w l lt 1 lc 1 lw 3 title "1"unset ylabelset origin 0.24,0plot "2.dat" u 1:2 w l lt 1 lc 7 lw 3 title "2"set origin 0.485,0plot "3.dat" u 1:2 w l lt 1 lc 3 lw 3 title "3"set origin 0.73,0plot "4.dat" u 1:2 w l lt 1 lc 4 lw 3 title "4"unset multiplo