How Can I White Space From Both Axis in Surface Plot?

조회 수: 6 (최근 30일)
Ted Baker
Ted Baker 2019년 10월 21일
댓글: Star Strider 2019년 10월 21일
Hi I'm trying to remove the whitespace around some surface plots I have made:
50start.png
I have tried using linspace in both dimensions, but can only remove the white space on the x axis (appears as y axis on the image above as I've rotated the plot). My code is as follows:
amp_limits = linspace(first_amp, last_amp, num_amp);
term_limits = linspace(first_term, last_term, num_terms);
BER_mat = reshape(BER_single, num_terms, num_amp);
amp_mat = first_amp:amp_res:(last_amp-amp_res);
term_mat = first_term:2:last_term;
[amp_mat, term_mat] = meshgrid(amp_limits, term_limits);
%surface in 3D
figure;
surf(amp_mat, term_mat, BER_mat);
view(90,-90);
xlabel('Amp');
ylabel('term');
This removes the white space along the top of the image, but not on the sides. Why is this?
Thanks in advance.

채택된 답변

Star Strider
Star Strider 2019년 10월 21일
See the axis function section on Set Axis Limits. You can set them to be whatever you want.
  댓글 수: 2
Ted Baker
Ted Baker 2019년 10월 21일
Thanks for the pointer. For completeness I've attached my working code below:
BER_mat = reshape(BER_single, num_terms, num_amp);
amp_mat = first_amp:amp_res:(last_amp-amp_res);
term_mat = first_term:1:(last_term/2)+0.5;
%surface in 3D
figure;
surf(amp_mat, term_mat, BER_mat);
view(90,-90);
xlabel('Amplitude (V_p_p)');
ylabel('Number of Fourier Terms');
title('BER plot');
axis([first_amp (last_amp-(amp_res)) first_term ((last_term/2)+0.5)]);
Star Strider
Star Strider 2019년 10월 21일
As always, my pleasure!
I appreciate your posting your working code. It will help others who read this.

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by