グラフの凡例コピー
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Figure1で作図したラインと凡例をFigure2へコピーしたいです。
ラインは正しくコピーできるのですが、凡例は、色の順番が変わってしまいます。
コピーする前と同じ順番で凡例をコピーしたいのですが、どのようにすれば良いですか?
%% プロット1
fig = figure(1);
ax(1) = axes('Position',[0.1000 0.1000 0.8182 0.8182]);
pHandle = plot([0 1],[1 1],[0 1],[2 2],[0 1],[3 3],[0 1],[4 4]);
lgd = legend('1','2','3','4');
%% プロット2
fig = figure(2);
ax(2) = axes('Position',[0.1000 0.1000 0.8182 0.8182]);
Line_obj = findobj(pHandle,'Type','Line'); % Lineの要素を抽出
copyobj(Line_obj,ax(2)); % Lineの要素をコピー
lgd_obj = lgd.String;
legend(lgd_obj); % legendの表示
0 comentarios
Respuestas (1)
michio
el 13 de Jul. de 2020
Line object の順番が代わってしまっているのが要因ですが、例えば
Line_obj = findobj(pHandle,'Type','Line'); % Lineの要素を抽出
を
Line_obj = findobj(ax(1),'Type','Line'); % Lineの要素を抽出
に変えて axes から Line を検索するようにすると順番も維持される模様です。
0 comentarios
Ver también
Categorías
Más información sobre Legend en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!