1

我目前有一个创建大量数字的 .m 文件。它目前将这些数字输出到一个幻灯片中,每个数字一张幻灯片,但我更喜欢用户友好的东西。我想为此使用带有应用程序设计器的应用程序,但我无法弄清楚如何使图形出现在 GUI 内。

我的目标:在 GUI 的左侧有一个下拉菜单,可以让您选择图形标题,然后该图形将出现在 GUI 右侧的大轴上。

该代码当前会在保存后关闭每个图形,但可以根据需要进行更改。

谁能帮我这个?这甚至可能吗?

4

1 回答 1

0

不是一个完整的答案,而是一些关于如何加载创建.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)

结果:

在此处输入图像描述 在此处输入图像描述

于 2019-10-01T23:08:21.483 回答