我目前正在创建散射图来表示铁磁性材料的自旋取向,但这随着时间的推移而改变。我想要做的是在一个for循环中创建这些情节。目前我可以创建每个地块,但我不知道如何存储和回忆我正在制作的地块。
理想情况下,我想在文档的后面回忆一个特定的情节,而不必将其保存为图像。
这有可能吗?
我目前正在使用SageMath和木星笔记本。
这是我目前用来生成散点图的代码:
Beta = ellipsis_range(0.05,Ellipsis,0.8,step=0.05)
for i in range(len(Beta)):
B = Beta[i]
j = 0
if B<0.85:
plt.figure(figsize=((9,6)))
for y in range(1,N+1):
for x in range(1,N+1):
if state[j]==1:
plt.scatter(x,y,color="red",marker="^")
if state[j]==-1:
plt.scatter(x,y,color="blue",marker="v")
j = j+1
plt.title("Spin Distribution for Beta="+str(round(B,2)))
plt.show()我的最终目标是使这些情节生动化。
提前谢谢你!
发布于 2022-09-15 08:39:19
从那以后,我成功地将我的散点图存储为一个数组!
def spinplot(B,j,N):
plot = plt.figure(figsize=((9,6)))
for y in range(1,N+1):
for x in range(1,N+1):
if state[j]==1:
plt.scatter(x,y,color="red",marker="^")
if state[j]==-1:
plt.scatter(x,y,color="blue",marker="v")
j = j+1
plt.title("Spin Distribution for Beta="+str(round(B,2)))
return plot在最初的for-循环中,我将绘图代码替换为:
j = 0
if B<0.85:
plots[k] = spinplot(B,j,N)
plt.close()
k = k+1我现在正试着给他们动画。理想情况下我会把它作为礼物保存下来。
https://stackoverflow.com/questions/73726542
复制相似问题