欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

用matplotlib画复杂的二维数学函数坐标图像

程序员文章站 2022-05-12 22:45:32
一、笛卡尔心形图import numpy as npimport matplotlib.pyplot as plta = 1t = np.linspace(0, 2*np.pi)X = a*(2*np.cos(t) - np.cos(2*t))/2Y = a*(2*np.sin(t) - np.sin(2*t))plt.plot(Y, X, c = 'r')plt.show()结果:二、三叶草图形from numpy import *import matplotlib.py...

一、笛卡尔心形图

import numpy as np
import matplotlib.pyplot as plt

a = 1
t = np.linspace(0, 2*np.pi)
X = a*(2*np.cos(t) - np.cos(2*t))/2
Y = a*(2*np.sin(t) - np.sin(2*t))

plt.plot(Y, X, c = 'r')
plt.show()

结果:
用matplotlib画复杂的二维数学函数坐标图像

二、三叶草图形

用matplotlib画复杂的二维数学函数坐标图像

from numpy import *
import matplotlib.pyplot as plt

n = int(2*pi/0.01)
t = linspace(0, 2*pi, n)
wh, hh = 0.5, 0.5
x = (2 / 3) * wh * sin(3*t) * cos(t)
y = (2 / 3) * hh * sin(3*t) * sin(t)

#创建画布并引入axisartist工具。
import mpl_toolkits.axisartist as axisartist
#创建画布
fig = plt.figure(figsize=(6, 6))
#使用axisartist.Subplot方法创建一个绘图区对象ax
ax = axisartist.Subplot(fig, 111)
#将绘图区对象添加到画布中
fig.add_axes(ax)

ax.axis[:].set_visible(False)#通过set_visible方法设置绘图区所有坐标轴隐藏
ax.axis["x"] = ax.new_floating_axis(0,0)#ax.new_floating_axis代表添加新的坐标轴
ax.axis["x"].set_axisline_style("->", size = 1.0)#给x坐标轴加上箭头

#添加y坐标轴,且加上箭头
ax.axis["y"] = ax.new_floating_axis(1,0)
ax.axis["y"].set_axisline_style("->", size = 1.0)
#设置x、y轴上刻度显示方向
ax.axis["x"].set_axis_direction("top")
ax.axis["y"].set_axis_direction("right")
plt.plot(x, y, c = 'b')
plt.xlim(-0.5, 0.5)
plt.ylim(-0.5, 0.5)
plt.show()

结果:
用matplotlib画复杂的二维数学函数坐标图像

本文地址:https://blog.csdn.net/weixin_48615832/article/details/109902623