我需要创建一个带有颜色图的图,但是效果不好。 EN1是图的底线,EN2是图的底线...您的cmap由OV1给出...但是如果我们查看数据文件,我们有
(第一个值)OV1:1.155696e-01,1.105146e-01,1.056876e-01 (减少)OV2:1.155696e-01,1.208650e-01,1.264139e-01。(增加) 和OV6: 6.318231e-01、6.757345e-01、7.10551e-01。 (增加)
如果我们寻找图(代码的结尾),即使ov1和ov2的值在开始时都很接近,并且OV6值最大,则图显示OV1的颜色比OV6更强烈。而且即使ov2的值接近,也比ov2的强度大得多。我想以全球规模作图。因为cmap似乎为绘制的每条线都创建了比例尺。谢谢。
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
A = np.loadtxt('EnergiesEF.dat', float)
B = np.loadtxt('Overlayer.dat', float)
EF=A[:,0]
EN1=A[:,1]
EN2=A[:,2]
EN6=A[:,6]
OV1=B[:,0]
OV2=B[:,1]
OV6=B[:,5]
plt.scatter(EF,EN1, c=OV1, cmap='Blues', s=400)
plt.scatter(EF,EN2, c=OV2, cmap='Blues', s=400)
plt.scatter(EF,EN6, c=OV6, cmap='Blues', s=400)
plt.show()