我想创建一个简单的ImageJ宏,它沿给定的线扫描绘制一个配置文件图,并将结果保存在.txt文件中。到目前为止,我有:
run("Plot Profile");
saveAs("Text", "/path/to/file/Values.txt");
这会在新窗口中创建绘图,但随后会返回错误,指出需要TextWindow。我怀疑宏试图将图像本身保存为文本而不是绘图数据。
如何实现与我点击个人资料图的“另存为”按钮或“列表 - >另存为”完全相同的宏?
答案 0 :(得分:1)
绘图窗口中的按钮不是由ImageJ的宏录制器录制的。 (自从您在ImageJ邮件列表中询问same question后,将来可能会发生变化。)
使用getProfile()
宏函数获取值列表(如此example macro所示),或使用Plot.getValues(xpoints, ypoints)
从绘图窗口中获取值(如图所示) ImageJ网站上的其他example macro。
例如:
run("Clear Results");
profile = getProfile();
for (i=0; i<profile.length; i++)
setResult("Value", i, profile[i]);
updateResults();
saveAs("Measurements", "/path/to/file/Values.txt");