首页 > 解决方案 > 带有 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   

调试器的结果:

在此处输入图像描述

标签: matlab

解决方案


openfig是 MATLAB 自带的一个函数,根据它的文档,使用的语法是正确的。

正确调用函数但导致错误的可能原因之一是无意中调用了不同的函数。当具有相同名称的不同函数隐藏(隐藏)原始函数时,就会发生这种情况。当前目录或路径上较早目录中的同名 M 文件将导致此问题。

在 MATLAB 命令提示符下键入which openfig会告诉您在使用该名称时调用了哪个函数。

在这种情况下,当前目录中有一个同名的 M 文件。删除此文件(或重命名)将解决问题。


推荐阅读