Plot system of linear equations
이전 댓글 표시
One of the first things I want to do in Matlab is enter a system of linear equations. I already found the example that helps me solve that system but I also want to plot those to see them visual.
The example I have is:
2*x - y == 7
x + y ==2
The code I use for solving this is the following:
syms x y
eq1 = 2*x-y==7
eq2 = x + y ==2
[A,B] = equationsToMatrix([eq1, eq2], [x, y])
X = linsolve(A,B)
This works.
But how do I plot eq1 and eq2?
If I'm not mistaken, the plot function requires actual values and not a function.
I know I can do something like this:
x = -10:0.1:10
y = 2*x- 7
plot(x,y)
But I was wondering if there's another way so that I can simply plot eq1 and eq2 without transforming it to something like y = ....
댓글 수: 4
darova
2020년 5월 14일
try ezplot
Yannick Ongena
2020년 5월 15일
Walter Roberson
2020년 5월 15일
fplot() had a number of new features added in R2015a, including the ability to plot symbolic expressions. ezplot() was left unenhanced.
Also, fplot() does a lot more work to try to find discontinuities, and to draw in the background.
ezplot() is based upon the much older technology of inline functions, which is not as efficient. inline() effectively creates scripts and eval()'s them, with all the problems that can cause.
Yannick Ongena
2020년 5월 15일
답변 (1개)
Sudhir Solkampally
2021년 5월 20일
Hi Yannick,
As per my understanding you are trying to plot linear equations. Below is the code snippet for reference.
syms x y
eq1 = 2*x-y==7;
eq2 = x + y ==2
[A,B] = equationsToMatrix([eq1, eq2], [x, y])
X = linsolve(A,B);
fimplicit(eq1);
hold on
fimplicit(eq2);
hold off
Thanks
댓글 수: 2
kenzo
2022년 7월 29일
What if you want to plot x=4, y=6, t=3*x+2*y=18 on the same graph
syms x y
t = 3*x + 2*y == 18
ty = solve(t, y)
fplot([6, ty], [-10 10])
xline(4)
카테고리
도움말 센터 및 File Exchange에서 Mathematics에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
