MATLAB 画图 配色
当MATLAB给的几个配色不够用时,我们可以自定义配色,比如
set(h5,'Color',[0,0.5,0])%牛油绿
set(h8,'Color',[0.6,0.2,0])%棕色
set(h11,'Color',[0.4940 0.1840 0.5560])% 紫色
有些时候一个图里有很多legend标注会导致空间不够显示或有覆盖,这时候我们可以将标注分成两列
figure
row_id=4;
h1=plot(xx,SE_wf_avr(row_id,:),line1{1},xx,SE_mmse_avr(row_id,:),line1{2},xx,SE_FCHBFcmp_avr(row_id,:),line1{3}, ...
xx,SE_FCHBFpp_avr(row_id,:),line1{4},xx,SE_DynHBF_avr(row_id,:),line1{5},'LineWidth',1.5);hold on
row_id=8;
h2=plot(xx,SE_wf_avr(row_id,:),line2{1},xx,SE_mmse_avr(row_id,:),line2{2},xx,SE_FCHBFcmp_avr(row_id,:),line2{3}, ...
xx,SE_FCHBFpp_avr(row_id,:),line2{4},xx,SE_DynHBF_avr(row_id,:),line2{5},'LineWidth',1.5);
% set(h0,'Color',[0.6,0.2,0])%棕色
legend([h1(1),h1(2),h1(3),h1(4),h1(5),],...
'DBF:WF, $\mathbf{N}_{\rm RF}=4$','DBF:WMMSE, $\mathbf{N}_{\rm RF}=4$', ...
'FC-HBF:Two-level, $\mathbf{N}_{\rm RF}=4$','FC-HBF:WMMSE-AltMin, $\mathbf{N}_{\rm RF}=4$', ...
'Dyn-HBF:Two-level, $\mathbf{N}_{\rm RF}=4$','interpreter','latex')
xlabel('ADC bit ($b$)','interpreter','latex')
ylabel('SE (bits/s/Hz)')
xticks(xx)
xlim([xx(1) xx(end)])
grid on
box on
axesNew = axes('position',get(gca,'position'),'visible','off');
legend(axesNew,[h2(1),h2(2),h2(3),h2(4),h2(5)],'DBF:WF, $\mathbf{N}_{\rm RF}=8$', ...
'DBF:WMMSE, $\mathbf{N}_{\rm RF}=8$','FC-HBF:Two-level, $\mathbf{N}_{\rm RF}=8$', ...
'FC-HBF:WMMSE-AltMin, $\mathbf{N}_{\rm RF}=8$', ...
'Dyn-HBF:Two-level, $\mathbf{N}_{\rm RF}=8$','location','west','interpreter','latex')
注意上面的代码中axesNew = axes(‘position’,get(gca,‘position’),‘visible’,‘off’)需要放在最后面才行