我是matlab工具的新手。我想在我的GUI中用matlab画出很多行。 matlab中的标准工具没有形状或线条等控件。
我的UI包括其他控件,如按钮和静态文本。
答案 0 :(得分:3)
不幸的是,您无法使用line()
命令直接绘制图形。但是,有一个技巧:您可以创建一个不可见的轴,因为可见性不会传播给子项。在不可见的轴上绘制,几乎与直接绘制图形一样好。这是一个例子:
f = figure;
a = axes;
set(a, 'Visible', 'off');
%# Stretch the axes over the whole figure.
set(a, 'Position', [0, 0, 1, 1]);
%# Switch off autoscaling.
set(a, 'Xlim', [0, 1], 'YLim', [0, 1]);
%# Create all the controls.
uicontrol('Parent', f, 'Style', 'edit', 'String', 'Input...');
%# Draw!
for y = 1 : 9
line([0.1, 1], [1 - y/10, 0.5], 'Parent', a)
end
编辑:当然,禁用轴的自动缩放是个好主意。否则,绘图就不太可预测了。