我目前有一个创建大量数字的 .m 文件。它目前将这些数字输出到一个幻灯片中,每个数字一张幻灯片,但我更喜欢用户友好的东西。我想为此使用带有应用程序设计器的应用程序,但我无法弄清楚如何使图形出现在 GUI 内。
我的目标:在 GUI 的左侧有一个下拉菜单,可以让您选择图形标题,然后该图形将出现在 GUI 右侧的大轴上。
该代码当前会在保存后关闭每个图形,但可以根据需要进行更改。
谁能帮我这个?这甚至可能吗?
我目前有一个创建大量数字的 .m 文件。它目前将这些数字输出到一个幻灯片中,每个数字一张幻灯片,但我更喜欢用户友好的东西。我想为此使用带有应用程序设计器的应用程序,但我无法弄清楚如何使图形出现在 GUI 内。
我的目标:在 GUI 的左侧有一个下拉菜单,可以让您选择图形标题,然后该图形将出现在 GUI 右侧的大轴上。
该代码当前会在保存后关闭每个图形,但可以根据需要进行更改。
谁能帮我这个?这甚至可能吗?
不是一个完整的答案,而是一些关于如何加载创建.fig
的文件并将轴复制到uipanel
.
首先创建一些图形:
f1 = figure();
subplot(211)
imagesc(rand(100));
subplot(212)
plot(rand(100,1))
saveas(f1, 'figure1.fig')
然后在你的 GUI 中加载这个数字。一个非常简单的 GUI 示例:
fig = uifigure;
fig.Position = [100 100 800 600]
pan1 = uipanel(fig, 'Title', 'Figure', 'Position',[0 0 600 600])
pan2 = uipanel(fig, 'Title', 'Select Figure', 'Position',[600 0 200 600])
f_new = openfig('figure1.fig', 'invisible'); % load 'invisible' so it doesn't popup
ax_to_copy = f_new.Children; % works even with subplots!
% and copy the loaded axes to the uipanel:
copyobj(ax_to_copy, pan1)
结果: