Get a user to input corordinates to form a matrix.

Hi I have the matrix;
points = [2 5; 6 9; 7 8; 9 10; 6 10]
I want to make it that the user inputs the points and a subsequent matrix is created. I think if I make a 2 x n matrix of zeros and get the user to input how many coordinates there is. But then I am stuck on how to ask the user to enter the coordinates. Could I use matrix manipulation with the input function to ask for the x and y values etc?
NOTE: These points are x and y coordinates i.e. 2 5 the x coordinate is 2 and the y coordinate is 5. I was also thinking maybe I could load a csv file and have the user specify the points in a table. I would prefer the aforementioned method if possible.
Thanks,

 채택된 답변

Azzi Abdelmalek
Azzi Abdelmalek 2014년 3월 23일
편집: Azzi Abdelmalek 2014년 3월 23일
You can try this
x=input('enter x coordinates between square bracket, like [1 2 3] ')
y=input('enter y coordinates between square bracket, like [1 2 3] ')
You can also use inpudlg
n=10; % number of lines
a= inputdlg('enter x coordinates','test',n)
x=str2num(a{1})
b= inputdlg('enter y coordinates','test',n)
y=str2num(a{1})

추가 답변 (1개)

Mischa Kim
Mischa Kim 2014년 3월 23일
Enter x- and y- coordinates, values separated by an empty space:
prompt = {'x-coor:','y-coor:'};
name = 'Input coordinates';
numlines = 1;
answer = inputdlg(prompt,name,numlines)
points = [str2num(answer{1}); str2num(answer{2})]';

댓글 수: 2

I prefer the layout of this dialogue. How could I use that layout with this code so that there is only one dialogue?
n=10; % number of lines
a= inputdlg('enter x coordinates','test',n)
x=str2num(a{1})
b= inputdlg('enter y coordinates','test',n)
y=str2num(a{1})
Thanks.
n=3; % number of lines
ab= inputdlg('enter x and y coordinates','test',n)
xy=str2num(ab{1})

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

카테고리

도움말 센터File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기

제품

질문:

2014년 3월 23일

댓글:

2014년 3월 24일

Community Treasure Hunt

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

Start Hunting!

Translated by