Output format error?

조회 수: 5 (최근 30일)
DocD
DocD 2017년 11월 3일
댓글: DocD 2017년 11월 3일
Hi There, I'm trying to output data to screen in two columns, the first column contains the ginputs (x,y coordinates) from user point selections using the mouse, whilst the second column is a set of reference coordinates held in the string "ActualValues".
I've only got 3 ginput (x,y) values in contrast to 10 reference values as I'm still getting the code functional.
I know this is a very basic problem, but I'm stuck fast and would really appreciate some help!
I keep getting the following error: Error using vertcat Dimensions of matrices being concatenated are not consistent. FinalOutput = [A, ActualValues; B; C];
This is my code:
clear
clc
close all
Map=imread('Map.Jpg');
imshow(Map);
hold on;
A = zeros(1, 24);
B = zeros(1, 24);
C = zeros(1, 24);
ActualValues = [124 93 109 77 125 83 117 75 122 80];
uiwait(msgbox('Choose Point A'));
[x,y] = ginput(1);
hline = plot(x,y,'r+', 'MarkerSize', 50);
A = [x, y];
uiwait(msgbox('Choose Point B'));
delete(hline);
[x,y] = ginput(1);
hline1 = plot(x,y,'r+', 'MarkerSize', 50);
B = [x, y];
uiwait(msgbox('Choose Point C'));
delete(hline1);
[x,y] = ginput(1);
hline2 = plot(x,y,'r+', 'MarkerSize', 50);
C = [x, y];
%Display Values:
disp ( 'User Values: Actual Values: Error:')
%FinalOutput = [A, B, C]; Formats output
%disp(FinalOutput); Displays previous formatted output (outputs FinalOutput)
FinalOutput = [A, ActualValues; B; C];
disp(FinalOutput);
disp(A);
disp(B);
disp(C);
How do I Fix this?
Many thanks.
  댓글 수: 2
KSSV
KSSV 2017년 11월 3일
ActualValues = [124 93 109 77 125 83 117 75 122 80];
this should be a matrix with..it shall have both x and y coordinates.
DocD
DocD 2017년 11월 3일
편집: DocD 2017년 11월 3일
I've tried that it still doesn't work, originally it was: ActualValues = [124 93; 109 77; 125 83; 117 75; 122 80];
its something to do with how its referenced in "finalOutput" at the bottom, but I don't know what or indeed how to correct, please help!
FinalOutput = [A, ActualValues; B; C]; disp(FinalOutput);

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

답변 (1개)

KSSV
KSSV 2017년 11월 3일
USe this:
FinalOutput = [A; ActualValues; B; C]
with ActualValues as [124 93; 109 77; 125 83; 117 75; 122 80];
  댓글 수: 3
KSSV
KSSV 2017년 11월 3일
A= [2, 3]
B= [4, 7]
C= [1, 8]
D= [1 1; 2 2; 3 3; 4 4; 5 5; 6 6; 7 7]
FinalOutput = [A; D; B; C]
is it repeating?
DocD
DocD 2017년 11월 3일
I'm sorry, I didn't get a response, so I posted out a wider question!
Looks Like I'm repeating myself too!
The amendment to the code you provided repeats as you can see above, I'd like the first, 7th and 8th x, y coords in the first column and the other values in the column next to it.
I appreciate your help!

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

카테고리

Help CenterFile Exchange에서 Data Exploration에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by