Python error "only size-1 arrays can be converted to Python scalars"

0 votes

I'm trying to plot the exponential and logistic population models, but my code doesn't seem to work as well as I planned, what's wrong?

Full Code:

import numpy as np
import matplotlib.pyplot as plt 
import math
from IPython.display import clear_output\

print ("Utilize Which Growth Model of Population? (Type A or B)") ;
print () ;
print ("A Exponential Growth Model") ;
print ("B Logistic Growth Model") ;
print () ;
A = int(1) ; #Exponential Growth Model
B = int(2) ; #Logistic Growth Model
C = input("Growth Model of choice : ") ;
print () ; 

if C == 'A' :
#Definition of Parameters
    print ("The Differential Equation of your chosen growth model is P'(t) = r*P(t)") ;
    print () ;
    print ("Where r = growth parameter") ;
    print ("Where P(t) = total population at a certain time t") ;
    print ("Where t = time") ; 
    print () ; 
#Explanation of Differential Equation
    print ("This equation can be considered as the exponential differential equation") ; 
    print ("because its solution is P(t) = P(0)*e^r*t ; where P(0) = Initial Population") ;
    print () ; 
    print ("This equation can be portrayed by using this graph : ")    
#Graph Code
    x,y = np.meshgrid (np.linspace(-50, 50, 10), np.linspace(-50, 50, 10)) ;
    r = float (input ("Encode Growth Parameter :")) ;
    t = float (input ("At how many years do you want to solve? :")) ;
    P = float (input ("Encode Population Count :")) ;
    P = y ; 
    t = x ;
    x = np.asarray (x, dtype='float64')
    Un = (P/P*(math.exp(r*t))) #Stack_overflow help from Adam.Er8 
    Vn = (P/P*(math.exp(r*t))) #Stack_overflow help from Adam.Er8 
    plt.quiver (x, y, Un, Vn) ;
    plt.plot ([8, 12, 25, 31], [1, 16, 20, 40]) ;
    plt.show () 

if C == 'B' :
    print ("The Differential Equation of your chosen growth model is y' = k*y*(M-y)") ;
    print () ;
    print ("Where k = slope of the function") ;
    print ("Where y = y-value at the specific point") ;
    print ("Where M = limit of y as x approaches infinity") ;
    print () ;
    print ("This equation is derived using *** ") ; 

    

Jul 9 in Python by JTM
299 views
Hey @JTM, python does not have semicolons. All your print statements have semicolons. Remove them. Also, can you be more specific with "my code doesn't seem to work as well as I planned"?

No answer to this question. Be the first to respond.

Your answer

Your name to display (optional):
Privacy: Your email address will only be used for sending these notifications.

Related Questions In Python

0 votes
1 answer

Pyplot error "only size-1 arrays can be converted to Python scalars"

You can plot the chart by taking ...READ MORE

answered Jan 28 in Python by Omkar
• 67,660 points
2,716 views
0 votes
1 answer
+1 vote
1 answer

Can assignment operator be used to copy elements in Python?

Yes assignment operator can be used to ...READ MORE

answered Jul 29 in Python by Neel
• 3,010 points

edited Jul 30 by Neel 22 views
0 votes
1 answer

How to get the size of a string in Python?

If you are talking about the length ...READ MORE

answered Jun 4, 2018 in Python by ariaholic
• 7,340 points
102 views
+1 vote
2 answers

how can i count the items in a list?

Syntax :            list. count(value) Code: colors = ['red', 'green', ...READ MORE

answered Jul 6 in Python by Neha
• 330 points

edited Jul 8 by Kalgi 328 views
+4 votes
6 answers