level 3
排空驭气奔如电
楼主



我想在下面的测试程序中画出来图应该如何做,我使用plot的时候没办法在用图一程序运行的时候跑出来图(意思是我查看保存下来的程序的时候发现保存的程序并没有画图出来),但是使用print的时候会直接在图一中的程序里面输出。代码:
(*定义要测试的变量范围和步长*)startValue = 0.2; (*起始值*)
endValue = 1; (*结束值*)
stepSize = 0.1; (*步长*)
(*循环遍历变量值*)
Do[Global`amp = varValue;
NotebookEvaluate[
"A"], {varValue, startValue,
endValue, stepSize}]
Global`amp
Plot[Sin[x*amp], {x, 0, 6 Pi}]
Print[Plot[Sin[x*amp], {x, 0, 6 Pi}]]
Qst = {0, 1, 2, 3, amp};
originalNb = NotebookFileName[];
If[originalNb =!= $Failed, base = DirectoryName[originalNb];
nameBase = FileBaseName[originalNb];
newName = nameBase <> "_" <> ToString[Qst[[-1]]] <> ".nb";
(*方法1:使用FileNameJoin的正确方式*)newPath = FileNameJoin[{base, newName}];
(*方法2:或者直接拼接字符串(更直观)*)(*newPath=base<>"\\"<>newName;*)
NotebookSave[EvaluationNotebook[], newPath];
Print["程序已保存为: ", newPath], Print["未保存的笔记本,请先手动保存"]]