Как создать и построить кусочную функцию - PullRequest
0 голосов
/ 16 января 2020

Я пытаюсь создать сюжет из нескольких функций, но не знаю, как их отформатировать в python. Например, приведенный ниже пример, пытающийся построить букву А, используя 3 функции с определенными значениями x:

import matplotlib.pyplot as plt
import numpy as np
x=np.linspace(-5,-4)
x2=np.linspace(-4,-3)
x3=np.linspace(-4.5,-3.5)
y=2*x+10
y2=-2*x2-6
y3=np.ones(len(x3))
plt.plot(x, y)
plt.plot(x2, y2)
plt.plot(x3,y3)
plt.show()

Как видите, мне пришлось создать диапазон значений x для каждой функции отдельно, и также определил каждую функцию индивидуально для каждой строки. Затем пришлось построить каждый из них независимо. При попытке сказать, скажем ... 50 функций, это может стать очень утомительным. Математически, есть упрощенный простой способ написать выше (IE Piecewise функции). Где некоторый f (x) равен 2 * x + 10 для -5

Я просто немного незнаком с форматированием, поэтому любая помощь будет принята с благодарностью! Спасибо!

1 Ответ

1 голос
/ 16 января 2020

Для начала вы можете создать список конечных точек, используя ваши формулы в для l oop. Затем создайте список пар для отрезков. Хороший способ присвоить (x1, y1) ... будет namedtuple('Point', ['x', 'y']).

from collections import namedtuple

Наконец, еще один l oop для построения отрезков. Вы можете оптимизировать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...