How to plot an array in negative axes

3 views (last 30 days)
Anum Ahmed
Anum Ahmed on 3 Feb 2018
Commented: dpb on 4 Feb 2018
I have initialized an array using the following code:
xdim=6;
ydim=12;
V_new=zeros(xdim+1,ydim+1);
V_new(5,4:10)=15;
V_new
Now, I want to plot this array from x=-3:9 and y=0:6.
However, I am not sure how to plot the array at the negative x-axis.
  3 Comments
dpb
dpb on 3 Feb 2018
Say what!? You have an array that is all zeros except for seven elements in the 5th row that are a constant.
What's to plot and what possible relation is there between the array and two totally unrelated variables
x =-3:9
y = 0:6
???
Anum Ahmed
Anum Ahmed on 3 Feb 2018
Edited: dpb on 4 Feb 2018
Actually the complete code goes like this:
xdim=6;
ydim=12;
V=zeros(xdim+1,ydim+1);
V_new=zeros(xdim+1,ydim+1);
V_new(5,4:10)=15;
error=15;
iter=0;
while(error>0.0001)
iter=iter+1;
for i=2:1:xdim
for j=2:1:ydim
if V_new(i,j) == 15
continue
end
V_new(i,j)=(V_new(i-1,j)+V_new(i+1,j)+V_new(i,j-1)+V_new(i,j+1))/4;
end
end
error=max(max(abs(V_new-V)));
V=V_new;
end
figure('Name', 'Contours of Electric Potential');
contour(flipud(V),15,'ShowText','on')
grid on
It is used to determine the potential for a box. The plotted result are according to the array I initially defined. However, I want to plot the results from x=-3:9 and y=0:6.

Sign in to comment.

Accepted Answer

dpb
dpb on 4 Feb 2018
Ah...ok, now I see...presuming the array is assumed to match box boundaries, just define X,Y to match the dimensions you want--
X=linspace(-3,9,size(V,2));
Y=linspace(0,5,size(V,1));
contour(X,Y,flipud(V),15,'ShowText','on')
...
  2 Comments
Anum Ahmed
Anum Ahmed on 4 Feb 2018
Greta, it works... Thanks a lot...!!!
dpb
dpb on 4 Feb 2018
No problem; I just "whiffed" on the question first go... :)

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!