在SAS 9.4中关闭自动图形保存

时间:2014-01-18 19:14:25

标签: sas sas-ods

在SAS 9.3中,我可以使用ODS HTML GPATH来指定我希望保存图形的路径(如果我愿意的话)。在9.4中,默认情况下(即每当我打开SAS时)每当我制作图表(例如PROC SGPLOT)时,它会自动将图表保存到保存SAS程序的位置。我试过去工具 - >选项 - >偏好 - >结果并取消选中HTML和ODS选项的每个组合,但无论我仍然获得自动保存的图形。我该怎么办呢?我最好仍然在 SAS中有ODS输出,但我不希望这些PNG(或其他)图像自动保存到SAS以外的计算机上。

编辑:更多信息,因为上述差异不明确。

1)在9.3中我ODS GRAPHICS ON并指定ODS HTML GPATH以便让SAS将我的图表保存到SAS以外的计算机上(或者我认为) 。如果我想在SAS内部使用ODS图形,但不在SAS之外保存图形,我可以说ODS GRAPHICS ON并跳过ODS HTML GPATH语句。

2)当我打开9.4而不做任何关于ODS的陈述(即默认保留设置),但运行SGPLOT等程序时,我 A 获得一个html图形(在SAS的“结果”窗口中显示的ODS图)和一个我可以在Windows Photo Viewer中双击打开的图形,以及 B )该图是另外自动保存在我的SAS程序所在的位置。

尝试停止此自动图表保存,我在运行PROC SGPLOT之前在SAS 9.4中尝试了以下内容:

1)ODS GRAPHICS OFF:没有任何改变。我仍然得到上面第(2)点列出的所有内容。

2)ODS HTML CLOSE(带ODS GRAPHICS ON):在SAS中丢失图表的html / ODS版本,但在SAS中仍然有图表我可以双击在Windows照片查看器中打开,仍然是图表会自动保存到我的SAS程序的位置。

3)ODS GRAPHICS OFFODS HTML CLOSE:与之前的情况相同((2)直接在上面)。

我想要的(我觉得这就是9.3中的情况)是肯定的,在 SAS中出现的ODS图表(不需要你可以双击的版本)在Windows Photo Viewer中打开,但是没有,没有SAS将PNG保存到我的计算机上(具体来说,我的SAS程序的位置)。

3 个答案:

答案 0 :(得分:4)

首先,关于你尝试过的一些注意事项。

ODS GRAPHICS开启/关闭不会对SGPLOT或任何SG程序产生任何实际影响;无论怎样,它们都是ODS GRAPHICS。它影响的是PROC UNIVARIATE和具有两种类型图形的类似程序 - 旧样式图形和ODS GRAPHICSODS GRAPHICS ON告诉他们使用ODS GRAPHICSOFF告诉他们使用旧方法。

ODS HTML CLOSE会告诉SAS不要生成HTML输出,但只要您打开另一个目的地(ODS LISTING?),它就会生成仍在GRAPH目的地的图表。另外,它仍然使用ODS HTML CLOSE生成图形(而不是注释“没有输出目的地”并且没有输出)这一事实告诉我你仍然打开一个目的地(同样可能LISTING )。因此,ODS HTML GPATH不一定能解决您的问题(因为它只会影响HTML输出的去向)。您需要为每个开放目标设置GPATHLISTINGHTML或两者,具体取决于您偏好设置中的复选框。

解决方案: 由于您希望它消失,最好的办法是将它放在您的工作目录中(当它正确关闭时由SAS清理)。

ods listing gpath="%sysfunc(getoption(work))";

proc sgplot data=sashelp.class;
vbar sex;
run;

请注意,.png文件是创建的(因为它们一直是),但现在它们进入工作目录(您可以像子库一样浏览并查看其中的每个文件)。

您可以将初始行放在autoexec.sas文件中,并告诉SAS在SAS启动时运行它(在命令行上使用-AUTOEXEC选项)。

您还可以取消选中工具中的Listing - >偏好设置 - >结果,和/或使用ODS LISTING CLOSE;,并且不应显示这些文件。

答案 1 :(得分:1)

转到工具 - >选项 - >偏好 - >结果并取消选中创建列表。它应该注意自动将PNG文件保存到程序文件中。

Poornachand

答案 2 :(得分:0)

在9.3中,当ODS HTML打开时,图表默认为用户的主目录。即使您未指定路径,它们也会保存到硬盘驱动器中。否则,浏览器无法显示图像。默认位置可能已移至9.4(我没有要测试的副本),但两个版本都将png文件放在您的硬盘上。