1
连接问题Plot 2D Numpy Array, 我试图绘制的:负numpy的第二阵列
tdos = np.transpose(tdos)
# plot
plt.plot(tdos[0], tdos[1])
plt.plot(tdos[0], -1.0*tdos[2]) # here, basically, I need the plot upside down
,这是给错误:
plt.plot(tdos[0], -1*tdos[2])
TypeError: unsupported operand type(s) for *: 'int' and 'numpy.ndarray'
我不明白为什么。尽管错误足够清楚。
转置TDO的样子:
[['-3.463' '-3.406' '-3.349' ..., '10.594' '10.651' '10.708']
['0.0000E+00' '0.0000E+00' '-0.2076E-29' ..., '0.2089E+02' '0.1943E+02'
'0.2133E+02']
['0.0000E+00' '0.0000E+00' '-0.3384E-30' ..., '0.3886E+02' '0.3915E+02'
'0.3670E+02']
['0.0000E+00' '0.0000E+00' '-0.1181E-30' ..., '0.9742E+03' '0.9753E+03'
'0.9765E+03']
['0.0000E+00' '0.0000E+00' '-0.1926E-31' ..., '0.9664E+03' '0.9687E+03'
'0.9708E+03']]
什么是'tdos'?不知道里面的东西很难说。但是'-1'A'beinng'A'一个numpy数组是非常好的(或者甚至是'-A'这个更短)。 –
@imaluengo:谢谢你的评论。它现在更新。 – BaRud
'tdos'似乎是一个字符串数组。在绘图之前尝试添加'tdos = tdos.astype(np.float)'。它会将数字字符串转换为浮点值。 –