如何在EXISTING图中改变单个线的厚度

时间:2014-05-30 14:46:34

标签: plot cygwin gnuplot

我创建了一个包含许多(50+)行的图。

我想设置一个键绑定器,这样我就可以切换每一行并改变它的厚度,从而使该线从其余部分中脱颖而出,然后当我再次按下该键时,下一行变得更粗。

通过这种方式,我可以清楚地检查每一行,与其他行相邻。

我知道如何分配键,但我不知道如何更改现有绘图上现有行的粗细。

我该如何解决这个问题?

月球

编辑1

是否可以做这样的事情:

set style line 1 lt 2 lc rgb "red" lw 3
set style line 2 lt 2 lc rgb "orange" lw 2
set style line 3 lt 2 lc rgb "yellow" lw 3
set style line 4 lt 2 lc rgb "green" lw 

savedls1 = ls 1
savedls2 = ls 2
savedls3 = ls 3
savedls4 = ls 4

plot <whatever> ls 2    #Original style

set style line 2 lt 2 lc rgb "black" lw 2 #new temp style

plot <whatever> ls 2; replot  #Temp new style

set style line 2 savedls2

plot <whatever> ls 2; replot  #Back to original style

1 个答案:

答案 0 :(得分:1)

在命令行(v4.6补丁级别3)中,您可以这样做:

  1. Specify a line style

    set style line 1 lt 2 lw 2 pt 3 ps 0.5
    
  2. 绘图时,请指定此线型:

    plot sin(x) ls 1
    
  3. 现在,您可以更改此线条样式,例如改变线宽:

    set style line 1 lt 2 lw 4 pt 3 ps 0.5
    
  4. 简单的replot将生成具有更新的线条样式的相同图形。

  5. 修改
    Christoph在评论中提供了这些信息,解决了密钥绑定的问题:
    在步骤3中改变线宽就足够了,其余的保持不变:

    set style line 1 lw 4  
    

    这将允许您定义两个不同的线宽并在它们之间切换:

    lw_small = 2
    lw_thick = 5
    
    set style line 1 lt 2 lw lw_small pt 3 ps 0.5
    
    plot sin(x) ls 1
    
    set style line 1 lw lw_thick # here, everything but the line-width stays constant
    
    pause 3
    replot
    
    set style line 1 lw lw_small
    
    pause 3
    replot