如何指定wxplot2d输出路径?能否在wxMaxima会话中修改maxima_tempdir?
关于wxMaxima中gnuplot输出路径的解决方案
针对你在Windows 10(1709)使用wxMaxima 16.04.2时,想将gnuplot终端输出文件保存到maxima_tempdir以外目录的需求,除了你已经发现的设置maxima_tempdir:"."的方法,还有以下几种可行方案:
直接指定完整/相对路径到输出参数
你完全不需要依赖maxima_tempdir,可以在gnuplot_out_file参数里直接写入目标文件的绝对路径或相对路径(相对wxMaxima当前工作目录)。比如:# 绝对路径示例 plot2d(sin(x),[x,0,2*%pi],[gnuplot_term,ps],[gnuplot_out_file,"C:/Users/YourName/Documents/Plots/sin.eps"]); # 相对路径示例(前提是当前目录下的plots文件夹已存在) plot2d(sin(x),[x,0,2*%pi],[gnuplot_term,ps],[gnuplot_out_file,"plots/sin.eps"]);这个方法最直接,不需要修改任何全局变量,每次绘图都可以灵活指定输出位置。
会话期间动态修改
maxima_tempdir
你完全可以在wxMaxima会话中随时修改这个变量的值,不需要重启程序。执行以下命令即可将临时目录切换到你想要的路径:# 切换到自定义目录 maxima_tempdir:"C:/MyMaximaOutputs";如果之后想恢复到系统默认的临时目录,只需执行:
# 恢复Windows系统临时目录 maxima_tempdir:getenv("TEMP");修改后,后续所有通过gnuplot终端生成的输出文件都会默认保存到这个新设置的目录下。
通过gnuplot预命令自定义输出路径
你可以利用gnuplot_preamble参数直接向gnuplot传递输出路径设置,绕过wxMaxima的默认路径处理逻辑:plot2d(sin(x),[x,0,2*%pi],[gnuplot_term,ps],[gnuplot_preamble,"set output 'C:/CustomPath/sin.eps'"]);这种方式适合需要对gnuplot进行更精细控制的场景,除了设置输出路径,还可以添加其他gnuplot配置命令。
另外补充一点:你可以用pwd();命令查看wxMaxima当前的工作目录,用cd("C:/YourTargetDir");命令切换工作目录,这会影响相对路径的解析。
内容的提问来源于stack exchange,提问作者booNlatoT
相关产品推荐
相关产品推荐

