【问题标题】:In this python code, the result plot is not being shown [duplicate]在此 python 代码中,未显示结果图 [重复]
【发布时间】:2020-12-05 14:17:04
【问题描述】:

这是我的 python 代码,我不知道如何使它正常工作! 我想通过子图在 2 行中绘制 2 个图。 它是这样说的: ----------> 发生异常:AttributeError “AxesSubplot”对象没有“显示”属性 文件“E:# Civil Engineering Undergraduate\Projects\Python\NUMPY_1\import numpy as np.py”,第 28 行,在 pp1.show()

import numpy as np
import matplotlib.pyplot as plt
kesai=0.0
k=2*541*3*29000/(16*12)**3+597*3*29000/(20*12)**3
w=30
m=w/386.4
Wn=(k/m)**0.5
Wd=Wn*(1-kesai**2)**0.5
pi=3.141592654
Tp=2
P0=20
n=5
nn=1000
Omeg=2*pi/Tp
t=np.linspace(0,10,nn)
dt=t[1]-t[0]
Pt=P0*np.cos(t*Omeg)/np.abs(np.cos(t*Omeg))
pp1=plt.subplot(2,1,1)
pp1.plot(t,Pt,'r')
f=0
for i in range(1,n+1):
    an=(2*P0)/(i*Omeg*Tp)*(np.sin(i*Omeg*(Tp/4))-np.sin(i*Omeg*(3*Tp/4))+\
                           np.sin(i*Omeg*(Tp/4))+np.sin(i*Omeg*(Tp))-np.sin(i*Omeg*(3*Tp/4)))
    print('Pt=',an,'cos(',i,'*',Omeg,'*t)')
    f=f+an*np.cos(i*Omeg*t)
pp1.plot(t,f,'k')
pp1.title:'External Load'
#pp1.show()
c1=Pt*np.exp(kesai*Wn*t)*np.cos(Wd*t)
c1=0.5*dt*(c1[0:nn-1]+c1[1:nn])
A=np.exp(-kesai*Wn*t)*np.sin(Wd*t)
c2=Pt*np.exp(kesai*Wn*t)*np.sin(Wd*t)
c2=0.5*dt*(c2[0:nn-1]+c2[1:nn])
B=np.exp(-kesai*Wn*t)*np.cos(Wd*t)
U=c1*A[0:nn-1]+c2*B[0:nn-1]
pp2=plt.subplot(2,1,2)
pp2.plot(t[0:nn-1],U)
pp2.title:'Response'
#pp2.show()

感谢您的帮助

【问题讨论】:

    标签: python matplotlib plot subplot


    【解决方案1】:

    最后改为:

    plt.show()
    

    【讨论】:

      猜你喜欢
      • 2022-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-15
      • 1970-01-01
      • 2018-05-21
      • 1970-01-01
      • 2020-12-22
      相关资源
      最近更新 更多