It is possible to read the graph and it has to produce the Y value for my input X value.

2 visualizaciones (últimos 30 días)
This is what my program to create a graph.. now i want to read the graph and it has to produce the y value for my input x value. is there any syntax for that?
j=input('Enter the number of straight lines in the graph: ');
for i=1:j
disp('Enter the X Y co-ordinate of one end of the straight line:');
x1(i)=input(' ');
y1(i)=input(' ');
disp('Enter the X Y co-ordinate of another of the straight line:');
x2(i)=input(' ');
y2(i)=input(' ');
c(i)=input('Enter the Y-intercept for straight line: ');
m(i)=(y2(i)-y1(i))/(x2(i)-x1(i));
end
for i=1:j
x=x1(i):0.01:x2(i);
y=((m(i))*x)+c(i);
plot(x,y);%,'MarkerFaceColor','g');
hold on;
%axis([-10 10 -5 5])
end
disp('-----------------------');
disp('your graph is displayed');
disp('-----------------------');
disp('Enter the X value from your graph: ');
p=input(' ');
disp('Corresponding Y is: ');
  2 comentarios
Vivek
Vivek el 4 de En. de 2013
Editada: Vivek el 4 de En. de 2013
hi walter,
this is what the assignment given to me
4. Consider the following graph with co-ordinates for some points. a) Create a function to find the equations for the graph. Create a function with X co-ordinate value as input for calculating the corresponding Y co-ordinate value as output. Implement the equations using m-scripting constructs, like For- loop, If-else, Switch-case etc. b) Plot the given graph using MATLAB inbuilt functions.
| --------
| /
|/
------------|-------------
/|
/ |
---------- |
I assume that now you understand the reason for multiple straight line. could you please help on this.

Iniciar sesión para comentar.

Respuesta aceptada

Davide Ferraro
Davide Ferraro el 3 de En. de 2013
Why are you asking two (x,y) values for a line and then also the intercept? Given two points you are able to calculate both m and c. And that point you will have the equation y of your line that you can evaluate to find the corresponding Y.
If you have more lines you may consider including and IF-ELSE statement, check what is the X value, associate it to the corresponding equation and then evaluate the equation. As Walter pointed out you may have multiple Y values, you may prevent this by checking that the user is using different X ranges when creating the curves.

Más respuestas (1)

Dr. Seis
Dr. Seis el 3 de En. de 2013
Editada: Dr. Seis el 3 de En. de 2013
Disregarding the fact that you can determine your c value from your m value, x1 value, and y1 value (or m, x2 and y2)... I think the syntax you are looking for (following your current syntax) is something like:
new_y = ... ; % Determine new y value for input x value
disp(sprintf('Corresponding Y is: %f',new_y));

Categorías

Más información sobre Graph and Network Algorithms en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by