matlab - 带有 Matlab 2018b 和 Octave 的错误消息“使用 openfig”
问题描述
我正在尝试在 MRI 图像生成中运行有关傅立叶空间的教学教程,并且始终出现以下错误:
使用 openfig 时出错
输入参数过多。
k_space_tutorial 中的错误(第 20 行) fig = openfig(mfilename, 'reuse')
我已确保包含代码和相关文件的文件夹位于目录中:
>> isdir('k_Space_tutorial_David_Moratal')
ans =
logical
1
并在路径中:
>> path
MATLABPATH
C:\Users\Myname\Documents\MATLAB
这些是目录的内容:
>> dir
. half_fov.m openfig.m
.. image_test.bmp rectangular_matrix.m
README.txt imatge_i_espai_k_originals.m replay_pid10644.log
add_awgnoise.m k_space_tutorial.fig replay_pid11732.log
filtre_pas_alt.m k_space_tutorial.m replay_pid13344.log
filtre_pas_baix.m modaldlg.fig
half_fourier_fe.m modaldlg.m
half_fourier_pe.m motion_artifacts.m
调试器的结果:
解决方案
openfig
是 MATLAB 自带的一个函数,根据它的文档,使用的语法是正确的。
正确调用函数但导致错误的可能原因之一是无意中调用了不同的函数。当具有相同名称的不同函数隐藏(隐藏)原始函数时,就会发生这种情况。当前目录或路径上较早目录中的同名 M 文件将导致此问题。
在 MATLAB 命令提示符下键入which openfig
会告诉您在使用该名称时调用了哪个函数。
在这种情况下,当前目录中有一个同名的 M 文件。删除此文件(或重命名)将解决问题。
推荐阅读
- javascript - 使用 TypeORM 更新多对多关系
- javascript - JavaScript 承诺不会将数据传递给 .then 除非我明确使用 Promise.resolve
- java - 使用以前版本的 json 从第三方 jar 重命名 Jsonproperties
- google-chrome - 为 webrtc chrome 同步假音频和媒体流
- java - 当我尝试在 Eclipse 上访问我的 API 但它在 IntelliJ 上工作时出现 NullPointerException
- f# - 匹配子句中的活动模式
- node.js - 将 Node.js 项目从普通 ES6 迁移到 TypeScript
- twig - 多语言设置中 Twig 模板中的 Grav 页面路由
- sql-server - 多值参数为空时选择所有记录
- algorithm - 对 Dijkstra 算法的证明感到困惑