-1

我知道在 gnuplot 中绘制圆圈的命令:

plot 'circle.txt' using 1:2:3 with circles

假设 ifcircle.txt包含n行,并且每行包含 ( centerX, centerY, radius) 的不同圆圈,例如:

#x  y   radius
0   0   1
1   1   2
2   2   3

如何生成n包含n不同圆圈的图像 - 每行一张图像?

4

1 回答 1

2

这将适用于gnuplot 4.4及更高版本:

gnuplot> n = "`awk 'END {print NR}' < circle.txt`"
gnuplot> i=0; while i<n{set term wxt i; plot 'circle.txt' every ::i::i using 1:2:3 with circles; i=i+1}

解释:

  • "`awk 'END {print NR}' < circle.txt`"确定文件中的行数
    警告:这在 Windows 32 位系统上不起作用)
  • i=0为 while 循环设置计数器
  • while i<n循环遍历文件的行
  • { }while 子句必须在花括号中
  • set term wxt i此部分为每个绘图打开新窗口
  • 通过单独的命令;
  • plot 'circle.txt' every ::i::i using 1:2:3 with circles这仅绘制i文件的第 th 行。有关绘制特定线条的更多信息,请参见此处。
  • i=i+1增加计数器
于 2013-05-30T17:15:05.297 回答