plot legend that depicts different markes of nodes

조회 수: 4 (최근 30일)
Rub Ron
Rub Ron 2023년 3월 23일
댓글: Rub Ron 2023년 3월 23일
I want to have a legend that label the markers present in my graph plot.
G = graph([1 1], [2 3]);
plot(G,'marker',[{'o'},{'x'},{'+'}])
Legend should show:
o one
x two
x three

채택된 답변

Dyuman Joshi
Dyuman Joshi 2023년 3월 23일
That's why if you directly use legend after creating the graph, you will get the graph as the legend identifier.
There is a work around to achieve what you want to do -
str=[{'o'},{'x'},{'+'}];
clr='b';
figure
hold on
for k=1:numel(str)
plot(NaN,NaN,[clr str{k}])
end
G = graph([1 1], [2 3]);
plot(G,'NodeColor',clr,'EdgeColor',clr,'Marker',str,'MarkerSize',6)
legend({'one', 'two', 'three'})
  댓글 수: 1
Rub Ron
Rub Ron 2023년 3월 23일
I would just add:
plot(NaN,NaN,[clr str{k}],'MarkerFaceColor',clr)
to fill the marker.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Legend에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by