how can I plot a cartesian grid grid of 100*30 size with stretching in matlab

2 次查看(过去 30 天)
Is that code correct ? also
close all;
clc;
Mi=0.5;
T=300;
P=1;
gamma = 1.4;
R=287;
vinf = sqrt(gamma*R*T)*Mi;
Nx = 100; % x dimension
Ny = 30; % y dimension
Nxy= Nx*Ny;
% step sizes
dx = 1;
dy = 1;
x = 1:dx:Nx; % x axis
y = 1:dy:Ny; % y axis
%set grid location
for j=1:Ny
for i=1:Nx
x(i)=single(i-1)*dx;
y(j)=single(j-1)*dy;
end
end

回答(1 个)

Ameer Hamza
Ameer Hamza 2020-3-18
I guess you want something like this
[x,y] = meshgrid(1:100, 1:30);
  4 个评论
Amal Fennich
Amal Fennich 2020-3-18
Nx = 100; % x dimension
Ny = 30; % y dimension
Nxy= Nx*Ny;
% step sizes
dx = 1;
dy = 1;
x = 1:dx:Nx; % x axis
y = 1:dy:Ny; % y axis
% PLOT ARC
circx= linspace(0,1,40);
circy= sqrt(8.35^2 - (circx-.5).^2)-8.335;
plot(circx, circy) % Draw An Arc
axis([-0.5 1.5 -.1 .1]) % Set Axis Limits
hold on;
[xx,yy]=meshgrid(x,y); %develop grid based on 2 (x and y) arrays of different size
z=zeros(size(xx)); %generate z as a matrix of zeros (same size as meshgrid)
pcolor(xx,yy,z); %plots the 3 dimensions as a '2d plot' of meshgrid at z=0
% view(1) %changes the 3d default view to a 2d for xy plane
xlim([1 100])
ylim([1 30])
hold off ;

请先登录,再进行评论。

类别

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