属性错误module 'matplotlib.pyplot' has no attribute 'hold'
本帖最后由 idear 于 2020-8-7 16:06 编辑运行程序的时候出行错误:AttributeError: module 'matplotlib.pyplot' has no attribute 'hold'。应该怎么解决{:10_266:} ,感谢大佬们 matplotlib.pyplot好像没有你所用的这个属性‘hold’吧
你的版本是?
代码是什么? sunrise085 发表于 2020-8-7 16:15
matplotlib.pyplot好像没有你所用的这个属性‘hold’吧
你的版本是?
我用的版本是Python3.8 idear 发表于 2020-8-7 16:32
我用的版本是Python3.8
## Plotting the problem
plt.figure(str(np.random.rand()))
plt.hold(True)
plt.grid(True)
# Plot the circular arc center.
plt.plot(slipArcSTR['center'], slipArcSTR['center'], 'kx')
# Plot the slip circular arc.
plt.plot(arcPointsCoordsArray[:,0], arcPointsCoordsArray[:,1], 'k-', \
lw=0.3)
# Plot the slices.
for i in range(len(slicesSTRCell)):
plotslice(slicesSTRCell)
# Plot the material boundary and the slope geometry.
plt.plot(boundPointsCordsArray[:,0], boundPointsCordsArray[:,1], 'k-')
# Plot the terrain surface.
plt.plot(surfaceChordsArray[:,0], surfaceChordsArray[:,1], 'k', lw=2)
# Plot the water table.
plt.plot(wtCoordsArray[:,0], wtCoordsArray[:,1], 'b-')
# Plot the radius of the arc at both ends.
radius1PlotArray = np.vstack((slipArcSTR['center'], pointAtToeVec))
plt.plot(radius1PlotArray[:,0], radius1PlotArray[:,1], 'k--', lw=0.5)
radius2PlotArray = np.vstack((slipArcSTR['center'], pointAtCrownVec))
plt.plot(radius2PlotArray[:,0], radius2PlotArray[:,1], 'k--', lw=0.5)
# Plot the factor of safety value in graphic.
if methodString == 'Allm':
fsText = ' $f_{\mathrm{s}\, \mathrm{(Fellenius)}}=+\
format(selectedFs, '.3f')+'\n'+\
' $f_{\mathrm{s}\, \mathrm{(Bishop\, Simp.)}}=+\
format(selectedFs, '.3f')
else:
if methodString == 'Bshp':
fsText = ' $f_{\mathrm{s}\, \mathrm{(Bishop\, Simp.)}}=+\
str(format(selectedFs, '.3f'))
else:
fsText = ' $f_{\mathrm{s}\, \mathrm{(Fellenius)}}=+\
str(format(selectedFs, '.3f'))
plt.text(0, surfaceChordsArray, fsText, fontsize = 11, \
horizontalalignment='left', verticalalignment='bottom')
## Final plot details.
plt.axis('equal')
plt.xlabel('$x$ distance')
plt.ylabel('$y$ distance')
plt.title(projectName)
plt.hold(False)
plt.savefig(projectName+outputFormatImg, dpi=300) sunrise085 发表于 2020-8-7 16:15
matplotlib.pyplot好像没有你所用的这个属性‘hold’吧
你的版本是?
源代码好像使用Python2.7写的 idear 发表于 2020-8-7 16:36
源代码好像使用Python2.7写的
哦哦,新版本中好像弃用了这个hold属性
具体改成什么我还没弄清楚,
你试试 clear() 或者 clf() sunrise085 发表于 2020-8-7 16:52
哦哦,新版本中好像弃用了这个hold属性
具体改成什么我还没弄清楚,
你试试 clear() 或者 clf()
好的好的,我去试试看,谢谢大佬 sunrise085 发表于 2020-8-7 16:52
哦哦,新版本中好像弃用了这个hold属性
具体改成什么我还没弄清楚,
你试试 clear() 或者 clf()
我刚才把plt.hold()这个属性给删除了,然后程序正常运行了,新版本中好像都是默认使用plt.hold(True)这个值,无需单独调用
页:
[1]