Hi
I have a table T of four columns x,y,u,v,
where x and y are the coordinates
and u and v are the values of the x and y components, respectively.
Thus, T represents a two-dimensional vector field.
For example, let
T=
1 3 -1 -1
1 4 0.500000000000000 -0.500000000000000
2 3 -0.250000000000000 0.250000000000000
2 4 0.100000000000000 0.100000000000000
I want to plot a 2-D vector field from this table!!!
I tried using the function:
coneplot(T)
but became the following error message:
??? Error using ==> coneplot>parseargs at 365
Wrong number of input arguments.
Error in ==> coneplot at 64
[x y z u v w cx cy cz s color quiv method nointerp] =
parseargs(nargs,args);
It seems that coneplot works only for 3-D.
Can someone tell me how to change this command line?
Thank you
Emerson

1 Kommentar

Qiujie Meng
Qiujie Meng am 2 Apr. 2019
Verschoben: Dyuman Joshi am 6 Dez. 2023
This is my code:
%%%%%%%%%%%%%%%%%%
close all;clc;clear all;
velocity=load('velocity100POINTS.txt');
x=velocity(:,1);
y=velocity(:,2);
u=velocity(:,3);
v=velocity(:,4);
figure
quiver(x,y,u,v)
%%%%%%%%%%%%%%%%%%%%%
Although my file has vectors,why the figure is like that......?
QQ截图20190402211109.png
QQ截图20190402211333.png

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 31 Mai 2011

0 Stimmen

Sounds like you are looking for quiver

3 Kommentare

Emerson De Souza
Emerson De Souza am 31 Mai 2011
Thanks Walter,
yes, it works.
I first did the following:
>> x=T(:,1);
>> y=T(:,2);
>> u=T(:,3);
>> v=T(:,4);
and finally plot with
quiver(x,y,u,v)
But is there a way to plot directly from table T
without needing to define new variables x,y,u,v?
Thanks in advance for your attention
Emerson
Walter Roberson
Walter Roberson am 31 Mai 2011
quiver(T(:,1),T(:,2),T(:,3),T(:,4))
Emerson De Souza
Emerson De Souza am 2 Jun. 2011
Thank you Walter
Wish you a nice night
Emerson

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Brijesh
Brijesh am 6 Dez. 2023

0 Stimmen

clc
clear all
syms x y
f = input('Enter:');
Unable to run the 'fevalJSON' function because it calls the 'input' function, which is not supported for this product offering.
p = inline(vectorize(f(1)),x,y);
q = inline(vectorize(f(2)),x,y);
x = linspace(-1,1,10);
y = x;
[X, Y] = meshgrid(x,y);
U = p(X,Y)
V = q(X,Y)
quivert(X,Y,U,V,1)
axis on;

1 Kommentar

Dyuman Joshi
Dyuman Joshi am 6 Dez. 2023
Bearbeitet: Dyuman Joshi am 6 Dez. 2023
@Brijesh, how exactly does your answer answers the question asked, that too 12 years ago and with an accepted answer.
There is no function as quivert and using inline and vectorize is not recommended.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Hilfe-Center und File Exchange

Produkte

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by