gnuplot将数据重定向到here文档
此命令正常工作,可将结果写入文件“oneMonthDataOnlyfile.txt” 我是否可以重定向到此处文档,例如:gnuplot将数据重定向到here文档,gnuplot,Gnuplot,此命令正常工作,可将结果写入文件“oneMonthDataOnlyfile.txt” 我是否可以重定向到此处文档,例如: system("/usr/bin/sed -e '1,3d' " . "oneMonthData.txt" . "> $myData); 当我尝试使用上述格式时,我得到了“应为括号” 或者使用系统(“/usr/bin/sed-e'1,3d”“。”oneMonthData.txt“>$myData”) sh:$myData:不明确的重定向 模糊重定向 或者:syste
system("/usr/bin/sed -e '1,3d' " . "oneMonthData.txt" . "> $myData);
当我尝试使用上述格式时,我得到了“应为括号”
或者使用系统(“/usr/bin/sed-e'1,3d”“。”oneMonthData.txt“>$myData”)代码>
sh:$myData:不明确的重定向
模糊重定向
或者:system(“/usr/bin/sed-e'1,3d'”,“oneMonthData.txt”>$myData)代码>
抛出:“应为列号或数据块行
我的格式是否有误,或者此处的文档是否不能以这种方式填充?尝试以下方法:
set print $myData
print system("whatever command you like")
unset print
试试这个:
set print $myData
print system("whatever command you like")
unset print
一种可能的解决方法是使用表格:
set table $myData
plot "< /usr/bin/sed -e '1,3d' " . "oneMonthData.txt" u 1:2
unset table
设置表$myData
绘图“
尽管需要注意的是,这并没有准确地保存输出,而是只保存其中的某些列。在gnuplot文档(即帮助表
)中,它说:
启用table
模式时,plot
和splot
命令打印出
多列文本值表
xy{Z}
而不是在当前终端上创建实际打印
因此,shell输出实际上将遵循该格式
编辑
您可以按照Ethan的注释,使用带有表格的样式来绘制更多的列,并且不带标志。一种可能的解决方法是使用表格:
set table $myData
plot "< /usr/bin/sed -e '1,3d' " . "oneMonthData.txt" u 1:2
unset table
设置表$myData
绘图“
尽管需要注意的是,这并没有准确地保存输出,而是只保存其中的某些列。在gnuplot文档(即帮助表
)中,它说:
启用table
模式时,plot
和splot
命令打印出
多列文本值表
xy{Z}
而不是在当前终端上创建实际打印
因此,shell输出实际上将遵循该格式
编辑
您可以按照Ethan的注释,使用with table
样式来绘制更多的列,并且不带标志。如果system()中使用的命令导致多行,gnuplot将其截断,并显示消息:警告:*非常长的系统调用输出已被截断
。如果system()中使用的命令
会产生许多行,gnuplot会使用以下消息截断它:警告:*非常长的系统调用输出已被截断
。存在“带表”的单独打印模式以绕过此限制。它最多转储14列输出,不带任何附加标志。带表的单独打印模式“存在是为了绕过这一限制。它最多转储14列输出,没有多余的标志。