Была исследована следующая проблема - в основном с matplotlib в python.
Возможны функции «Basi c», например y = x^2
, но если я хочу построить уравнение (которое не обязательно является функцией из-за нескольких ассоциаций xy), например:
x^2 + y^2 = 1
(просто базовый c круг с радиусом 1 вокруг точки (0/0) в двухмерном
Есть ли способ построить такое уравнение с помощью matplotlib или другой подобной библиотеки?
Мне пришла в голову идея переписать уравнение в функцию с возможностью рисования, но из-за присвоения абсолютного значения оно выглядит сложнее, чем исходное уравнение, например, приведенное выше уравнение превращается в «функцию»: |y| = sqrt(1-x²)
с -y
и +y
.
// РЕДАКТИРОВАТЬ: по запросу от @ mkrieger1 редактирование этого вопроса. Цель моего программного обеспечения - использовать ввод (заданный другой функцией; строка, представляющая любое уравнение, например, "y^3-sqrt(sin(x^2)-2)*2 = 3x"
) и превратить его в график. Мне лично не удалось решить функции для y (как упоминалось ранее), особенно с более сложными функциями. Разделение этих уравнений на «более мелкие части», учитывая широкий спектр математических входных данных, также довольно сложно, поэтому я подумал, что лучше всего будет использовать метод решения контуров. (Как предложил @ mkrieger1). Еще раз, этот подход имеет решающее значение из-за необходимого «редактирования» уравнения перед его реализацией в plt.contour(X, Y, func, [0])
, а также из-за предупреждения пользователя позже.