Plotting two variables, getting graph and x intercept

I need to plot the equation :
0 = x^3 + 6x^2 + 4(1 - y^2)
The variable y needs to take values 0, 1, 2, 3, 4. I'm wondering if there is a loop I can do for this.
I would also like to get the x-intercepts as an output.
Is there a way to plot them on single graphs and all on the same graph?

 采纳的回答

Try this:
xv = linspace(-6, 4, 25);
yv = [1 2 3 4];
for k = 1:numel(yv)
ply = [1 6 0 4*(1-yv(k).^2)];
rts(:,k) = roots(ply);
pv(k,:) = polyval(ply, xv);
end
figure
plot(xv, pv)
grid
The x-intercepts will be the roots, returned column-wise in the ‘rts’ matrix.

更多回答(1 个)

Here's an alternative
f = @(x,y) x.^3 + 6*x.^2 + 4*(1-y.^2);
coeff = @(y) [1 6 0 4*(1-y.^2)];
y = 0:4;
for i = 1:length(y)
R(:,i) = roots(coeff(y(i)));
end
ezplot(f)

类别

帮助中心File Exchange 中查找有关 2-D and 3-D Plots 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by