how can i use legend command when i am using hold on for plotting graphs? in my plot i want to use legend command to indicate the color for respective plot that is black for low pass,blue for high pass,green for power complementary,red for all pass.

10 次查看(过去 30 天)
k = input('Number of frequency points = '); %%256
w = 0:pi/k:pi;
alpha=0.3
num=((1-alpha)/2)*[1 1]
den=[1 -alpha]
hlp=freqz(num,den,w)
num1=((1+alpha)/2)*[1 -1]
den1=[1 -alpha]
hhp=freqz(num1,den1,w)
figure
subplot(2,1,1)
plot(w/pi, abs(hlp),'k','LineWidth', 2);hold on
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Amplitude', 'FontSize', 12, 'FontWeight', 'Bold')
title('|H(\omega)|', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
legend ('low pass','high pass','all pass','Location', 'Northwest')
set(legend,'FontSize',7);
subplot(2,1,2)
plot(w/pi, angle(hlp),'k', 'LineWidth', 2);hold on;
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Phase, radians', 'FontSize', 12, 'FontWeight', 'Bold')
title('\angle H(\omega)', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
% legend (ax2,'hlp','hhp','all_pass','Location', 'Northwest')
% set(legend,'FontSize',7);
subplot(2,1,1)
plot(w/pi, abs(hhp), 'LineWidth', 2);hold on
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Amplitude', 'FontSize', 12, 'FontWeight', 'Bold')
title('|H(\omega)|', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
subplot(2,1,2)
plot(w/pi, angle(hhp), 'LineWidth', 2);hold on;
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Phase, radians', 'FontSize', 12, 'FontWeight', 'Bold')
title('\angle H(\omega)', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
all_pass=abs(hlp+hhp)
%figure
subplot(2,1,1)
plot(w/pi, abs(all_pass),'r', 'LineWidth', 2);hold on
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Amplitude', 'FontSize', 12, 'FontWeight', 'Bold')
title('|H(\omega)|', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
subplot(2,1,2)
plot(w/pi, angle(all_pass),'r', 'LineWidth', 2);hold on;
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Phase, radians', 'FontSize', 12, 'FontWeight', 'Bold')
title('\angle H(\omega)', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
%%power complentary
powr=(abs(hhp).^2)+(abs(hlp).^2)
figure
subplot(2,1,1)
plot(w/pi, abs(hlp),'k', 'LineWidth', 2);hold on;
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Amplitude', 'FontSize', 12, 'FontWeight', 'Bold')
title('|H(\omega)|','FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
legend ('hlp','hhp','powr','Location', 'Northwest')
set(legend,'FontSize',7);
subplot(2,1,2)
plot(w/pi, angle(hlp),'k', 'LineWidth', 2);hold on;
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Phase, radians', 'FontSize', 12, 'FontWeight', 'Bold')
title('\angle H(\omega)', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
legend ('hlp','hhp','powr','Location', 'Northwest')
set(legend,'FontSize',7);
subplot(2,1,1)
plot(w/pi, abs(hhp), 'LineWidth', 2);hold on
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Amplitude', 'FontSize', 12, 'FontWeight', 'Bold')
title('|H(\omega)|', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
subplot(2,1,2)
plot(w/pi, angle(hhp), 'LineWidth', 2);hold on;
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Phase, radians', 'FontSize', 12, 'FontWeight', 'Bold')
title('\angle H(\omega)', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
subplot(2,1,1)
plot(w/pi, abs(powr),'g', 'LineWidth', 2);hold on
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Amplitude', 'FontSize', 12, 'FontWeight', 'Bold')
title('|H(\omega)|', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
subplot(2,1,2)
plot(w/pi, angle(powr),'g', 'LineWidth', 2);hold on;
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Phase, radians', 'FontSize', 12, 'FontWeight', 'Bold')
title('\angle H(\omega)', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')

采纳的回答

Azzi Abdelmalek
Azzi Abdelmalek 2015-6-20
编辑:Azzi Abdelmalek 2015-6-20
Use the legend function after the three plots
close all
k = input('Number of frequency points = '); %%256
w = 0:pi/k:pi;
alpha=0.3
num=((1-alpha)/2)*[1 1]
den=[1 -alpha]
hlp=freqz(num,den,w)
num1=((1+alpha)/2)*[1 -1]
den1=[1 -alpha]
hhp=freqz(num1,den1,w)
figure
subplot(2,1,1)
plot(w/pi, abs(hlp),'k','LineWidth', 2);hold on
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Amplitude', 'FontSize', 12, 'FontWeight', 'Bold')
title('|H(\omega)|', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
plot(w/pi, abs(hhp), 'LineWidth', 2);hold on
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Amplitude', 'FontSize', 12, 'FontWeight', 'Bold')
title('|H(\omega)|', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
plot(w/pi, abs(all_pass),'r', 'LineWidth', 2);hold on
grid on;
xlabel('\omega/\pi', 'FontSize', 12, 'FontWeight', 'Bold')
ylabel('Amplitude', 'FontSize', 12, 'FontWeight', 'Bold')
title('|H(\omega)|', 'FontSize', 12, 'FontWeight', 'Bold')
set(gca, 'FontSize', 14, 'FontWeight', 'Bold')
legend ('low pass','high pass','all pass','Location', 'Northwest')
set(legend,'FontSize',7);

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Graphics Object Properties 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by