Graphing Parabola przy użyciu Matplotlib w Python

Próbuję przedstawić prostą parabola
matplotlib

, I nie rozumiem, jak muszę zbudować punkty na paraboli. Do tej pory jest to, co mam:


import matplotlib.pyplot as plt
a=[]
b=[]
y=0
x=-50
while x in range/-50,50,1/:
y=x^2+2*x+2
a=[x]
b=[y]
fig= plt.figure//
axes=fig.add_subplot/111/
axes.plot/a,b/
plt.show//
x= x+1
Zaproszony:

Zenon

Potwierdzenie od:

Należy to zrobić:


import matplotlib.pyplot as plt
import numpy as np

# create 1000 equally spaced points between -10 and 10
x = np.linspace/-10, 10, 1000/

# calculate the y value for each element of the x vector
y = x**2 + 2*x + 2

fig, ax = plt.subplots//
ax.plot/x, y/

Witold

Potwierdzenie od:

To twoje podejście z tak mało, jak to możliwe zmiany, aby to działać. /Ponieważ jest jasne, że jesteś nowy, a to jest ćwiczenie edukacyjne/. Zmiany, które zrobiłem, były:

Przeniósł
plt.figure

i innych operatorów do budowy wykresu z cyklu. Cykl daje teraz dane do budowania harmonogramu, a następnie budujesz go, gdy tylko cykl zostanie zakończony.

Zmieniony
x^2

na
x**2

.

Zmieniony
while

w
for

Dla aplikacji zarządzania opinią.

Skomentował kilka linii, które nic nie zrobiły. Wszystkie z nich mieli takie samo źródło błędu /lub faktycznie niesieści/: w for loop
x

jest zainstalowany w linii sterowania cyklu, a następnie
y

Jest obliczany bezpośrednio, więc nie musisz podawać swoich wartości początkowego lub zwiększenia
x

, Chociaż musiałbyś wykonać te kroki while loop.


Oto kod:


import matplotlib.pyplot as plt

a=[]
b=[]
# y=0
# x=-50

for x in range/-50,50,1/:
y=x**2+2*x+2
a.append/x/
b.append/y/
#x= x+1

fig= plt.figure//
axes=fig.add_subplot/111/
axes.plot/a,b/
plt.show//

Bronisław

Potwierdzenie od:

Dostosuj swój trzeci ostatni ciąg w następujący sposób ::


axes.plot/a,b, 'r-^'/


Dodanie '
r-^

' Dodaj czerwone punkty trójkątne na wykres. Alternatywnie możesz użyć '
b-o

'.

Uwaga:

Musisz włączyć cytaty.

Dla różnych kolorów można użyć "b'-blue; "G'-Green; "R'-Red; "c'-blue; "M'-fioletowy; "Y'-żółty; "k'-czarny; "W" biały

- W '
r-^

' lub '
b-o

' Utwórz odpowiednio linia łączące trójkąty lub kręgi. To jest, bez kreska, otrzymasz wykres punktowy.

Alternatywnie jest zespół ....
scatter/x,y/

, co byłoby równoważne '
r ^

' i '
b o

'

Kazimierz

Potwierdzenie od:

Cześć, myślę, że możesz go użyć


import matplotlib.pyplot as plt
import numpy as np
'''
Set the values in the variable x
The function arange helps to generate an array with the
following parameters arange/start,end,increment/
'''
x = np.arange/-100,100,1/
'''
Now set the formula in the variable y
'''
y = x**2
'''
Then add the pair /x,y/ to the plot
'''
plt.plot/x,y/
'''
Finally show the graph
'''
plt.show//


https://i.stack.imgur.com/v9vY3.png

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się