How to plot for different parameter values of a, p1 and p2
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi all, I want to plot using different parameter values of a, p1 and p2 in the same plot in the following code. Like a = 1,2,3 , p1= 1,2,3 and p2= 1,2,3.
My code:
a = 1;
p1=1;
p2=1;
r1 = 1/2.*log2(1+(p1/(a+ p2)));
r2 = 1/2.*log2(1+(p2/(a)));
plot([0 r1],[r2 r2]);
hold on;
plot([r1 r2],[r2 r1]);
plot([r2 r2],[r1 0]);
Thanks
댓글 수: 2
TastyPastry
2015년 10월 20일
Can you be more specific as to what you're trying to plot on each axis? Currently your code plots 3 lines on the same plot. Are you trying to shorten your code?
채택된 답변
Image Analyst
2015년 10월 21일
Try this:
% Define variables.
a = [1,2,3];
p1 = [1,2,3];
p2 = [1,2,3];
for index = 1 : length(p1)
subplot(2, 2, index);
r1 = 1/2. * log2(1+(p1(index) / (a(index)+ p2(index))));
r2 = 1/2 .* log2(1+(p2(index) / (a(index))));
fprintf('For index = %d, a=%d, p1 = %d, p2 = %d, r1 = %f, r2 = %f\n', ...
index, a(index), p1(index), p2(index), r1, r2);
plot([0 r1],[r2 r2], 'b*-', 'LineWidth', 3, 'MarkerSize', 15);
hold on;
plot([r1 r2],[r2 r1], 'b*-', 'LineWidth', 3, 'MarkerSize', 15);
plot([r2 r2],[r1 0], 'b*-', 'LineWidth', 3, 'MarkerSize', 15);
grid on;
caption = sprintf('a=%d, p1 = %d, p2 = %d', a(index), p1(index), p2(index));
title(caption, 'FontSize', 20);
xlabel('X', 'FontSize', 20);
ylabel('Y', 'FontSize', 20);
end
% Set up figure properties:
% Enlarge figure to full screen.
set(gcf, 'Units', 'Normalized', 'OuterPosition', [0 0 1 1]);
% Get rid of tool bar and pulldown menus that are along top of figure.
set(gcf, 'Toolbar', 'none', 'Menu', 'none');
% Give a name to the title bar.
set(gcf, 'Name', 'Demo by ImageAnalyst', 'NumberTitle', 'Off')
댓글 수: 2
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Line Plots에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!