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)'。它會將數字字符串轉換爲浮點值。 –