Avoir le graphique d'équation de la fonction linéaire dessiné en Python

Récemment, je faisais un graphique d'équations linéaires au collège, et j'ai décidé de le faire parce que je pensais: "Si vous demandez à Python de faire cela, vous pouvez en profiter ~~ C'est intéressant ~~".

spécification

Entrez le taux de changement (gradient) et la section pour afficher le graphique. Si vous voulez que le taux de variation soit une fraction, entrez-le sous la forme y / x.

Quoi utiliser

--Python2.7 (Parce que je viens d'installer PyCharm ...)

couler

  1. Entrez le taux de changement et la section
  2. Créez des données x et y
  3. Dessinez un graphique avec matplotlib

La production a commencé!

Importez ce dont vous avez besoin pour le moment

main.py


import matplotlib.pylab as plt
import numpy as np

L'entrée se fait avec raw_input ().

main.py


#réduction
import matplotlib.pylab as plt
import numpy as np

print("Liner equation:")
le = raw_input()

Obtenez le taux de changement de la formule. Puisque l'expression a une forme comme $ rx + i $, la chaîne de caractères avant «+» est le taux de changement. Obtenez-le avec split.

main.py


import matplotlib.pylab as plt
import numpy as np

print("Liner equation:")
le = raw_input()

rate = le.split("x")[0]

Ensuite, récupérez la section. Considérons le cas où la section est 0.

main.py


import matplotlib.pylab as plt
import numpy as np

print("Liner equation:")
le = raw_input()

rate = le.split("x")[0]
ic = 0 if le.split("x")[1] == "" else le.split("x")[1]

Ensuite, nous initialiserons la quantité de changement en x et y.

main.py


import matplotlib.pylab as plt
import numpy as np

print("Liner equation:")
le = raw_input()

rate = le.split("x")[0]
ic = 0 if le.split("x")[1] == "" else le.split("x")[1]

x_rate = 1
y_rate = 1

Ensuite, créez un processus lorsque le taux de changement est une fraction (lorsqu'il est séparé par /) et un processus lorsqu'il n'est pas séparé.

main.py


import matplotlib.pylab as plt
import numpy as np

print("Liner equation:")
le = raw_input()

rate = le.split("x")[0]
ic = 0 if le.split("x")[1] == "" else le.split("x")[1]

x_rate = 1
y_rate = 1

if rate.find("/") > -1:
    x_rate = int(rate.split("/")[1])
    y_rate = int(rate.split("/")[0])
else:
    x_rate = 1
    y_rate = 1 if rate == "" else int(rate)

Le reste consiste à générer un tableau avec la quantité de changement.

main.py


import matplotlib.pylab as plt
import numpy as np

print("Liner equation:")
le = raw_input()

rate = le.split("x")[0]
ic = 0 if le.split("x")[1] == "" else le.split("x")[1]

x_rate = 1
y_rate = 1

if rate.find("/") > -1:
    x_rate = int(rate.split("/")[1])
    y_rate = int(rate.split("/")[0])
else:
    x_rate = 1
    y_rate = 1 if rate == "" else int(rate)

x = np.linspace(-x_rate / 2,x_rate,4)
y = x * y_rate + int(ic)

Enfin, dessinez un graphique à partir du tableau.

main.py


import matplotlib.pylab as plt
import numpy as np

print("Liner equation:")
le = raw_input()

rate = le.split("x")[0]
ic = 0 if le.split("x")[1] == "" else le.split("x")[1]

x_rate = 1
y_rate = 1

if rate.find("/") > -1:
    x_rate = int(rate.split("/")[1])
    y_rate = int(rate.split("/")[0])
else:
    x_rate = 1
    y_rate = 1 if rate == "" else int(rate)

x = np.linspace(-x_rate / 2,x_rate,4)
y = x * y_rate + int(ic)

plt.plot(x,y,"r-")
plt.show()

C'est tout ce qu'on peut en dire!

Après cela, exécutez-le et entrez l'équation linéaire, et elle sera dessinée.

$ 4x+5 $ $ x+1 $ $ -3x-5 $

Je suis encore nouveau sur Python, alors donnez-moi quelques conseils.

Je viens de remarquer que la classe pour sortir le graphique de la formule était terminée ...

Recommended Posts

Avoir le graphique d'équation de la fonction linéaire dessiné en Python
Dessiner un graphique d'une fonction quadratique en Python
Récupérer l'appelant d'une fonction en Python
Trouvez la solution de l'équation d'ordre n avec python
Résolution d'équations de mouvement en Python (odeint)
Essayez de transcrire la fonction de masse stochastique de la distribution binomiale en Python
Une fonction qui mesure le temps de traitement d'une méthode en python
Vérifiez le comportement du destroyer en Python
Prenez la somme logique de List en Python (fonction zip)
[Python3] Réécrire l'objet code de la fonction
Le résultat de l'installation de python sur Anaconda
Principes de base pour exécuter NoxPlayer en Python
À propos de l'équation normale de la régression linéaire
À la recherche du FizzBuzz le plus rapide en Python
Equation de mouvement à double pendule en python
Sortie du nombre de cœurs de processeur en Python
[Python] Trier la liste de pathlib.Path dans l'ordre naturel
Faites correspondre la distribution de chaque groupe en Python
Afficher le résultat du traitement de la géométrie en Python
Copiez la liste en Python
Découvrez la fraction de la valeur saisie en python
Correction des arguments de la fonction utilisée dans map
L'histoire de la lecture des données HSPICE en Python
[Note] À propos du rôle du trait de soulignement "_" en Python
Sortie sous la forme d'un tableau python
J'ai essayé d'implémenter la fonction gamma inverse en python
Définir la limite supérieure du nombre de répétitions de fonctions récursives en Python
Dessin graphique avec python
le zen de Python
Recherche linéaire en Python
Dessiner un graphique avec python
"Régression linéaire" et "Version probabiliste de la régression linéaire" en Python "Régression linéaire de Bayes"
J'ai essayé de représenter graphiquement les packages installés en Python
Découvrez la bonne efficacité de calcul de la vectorisation en Python
[Python] Obtenez les nombres dans l'image graphique avec OCR
Omettre les graduations du graphique après la virgule décimale dans matplotlib
[python] Récupère la liste des classes définies dans le module
Implémentation python de la classe de régression linéaire bayésienne
L'histoire de FileNotFound en Python open () mode = 'w'
Apprenez le modèle de conception «Chaîne de responsabilité» en Python
Implémenter la solution de l'algèbre de Riccati en Python
Obtenir la taille (nombre d'éléments) de Union Find en Python
Ne pas être conscient du contenu des données en python
Reproduire l'exemple d'exécution du chapitre 4 de Hajipata en Python
Utilisons les données ouvertes de "Mamebus" en Python
Implémentation de l'algorithme "Algorithm Picture Book" en Python3 (Heap Sort Edition)
[Python] Affiche toutes les combinaisons d'éléments de la liste
Obtenez l'URL de la destination de la redirection HTTP en Python
Un mémorandum sur la mise en œuvre des recommandations en Python
Reproduire l'exemple d'exécution du chapitre 5 de Hajipata en Python
Pour faire l'équivalent de Ruby ObjectSpace._id2ref en Python
L'attitude que les programmeurs devraient avoir (Le Zen de Python)
Vérifiez la nature atrophique de la distribution de probabilité en Python
Que signifie le dernier () dans une fonction en Python?
Remarque: Signification de spécifier uniquement * (astérisque) comme argument dans la définition de fonction de Python
[Python] Représentation du nombre de plaintes des compagnies d'assurance-vie dans un graphique à barres
Essayez de gratter les données COVID-19 Tokyo avec Python
Essayez d'obtenir la liste des fonctions du paquet Python> os
Découvrez la largeur apparente d'une chaîne en python