看看这个图片,我们来看第一个螺旋,中心是紫的,如何把它变成黄的,并且其他螺旋的颜色都把它们颠倒一下。
这是我的代码
import math as m
import numpy as np
import matplotlib.pyplot as plt
def intensity(x, y, R=1.343, lamd=589.3e-9, Delta_d=0):
r2 = x**2 + y**2
theta = m.pi*r2/(R*lamd) + (2*m.pi*Delta_d)/lamd
l, c = np.shape(theta)
i = np.zeros((l, c))
i = np.array([[m.sin(theta[i, j]) for j in range(c)] for i in range(l)])
print('1',i,type(i))
return i
def CalculateI(width, N):
x = np.linspace(-width, width, N)
y = np.linspace(-width, width, N)
[X, Y] = np.meshgrid(x, y)
I = intensity(-X, -Y)
print('2',I,type(I))
return I
def MakePlot():
# 建立子图
fig = plt.figure()
ax1 = fig.add_subplot(221)
ax2 = fig.add_subplot(222)
ax3 = fig.add_subplot(223)
ax4 = fig.add_subplot(224)
# 计算四种环的光强分布
I1 = CalculateI(0.004, 1000)
I2 = CalculateI(0.003, 1000)
I3 = CalculateI(0.002, 1000)
I4 = CalculateI(0.001, 1000)
#print(I1,I2,I3,I4)
# 作图
ax1.imshow(I1)
ax2.imshow(I2)
ax3.imshow(I3)
ax4.imshow(I4)
plt.show()
MakePlot()
能帮我改一下吗,谢谢!