向包含两组数据的散点图添加图例



我按以下方式绘制了数据:

G=[(1.42*1e-5, 8.5*1e-2), (1.19*1e-5, 7.8*1e-2), (1.03*1e-5, 6*1e-2), (8.95*1e-6, 4.7*1e-2), (7.63*1e-6, 3.8*1e-2), (7.12*1e-6, 3.2*1e-2), (5.72*1e-6, 2.6*1e-2)]
PN=[5*1e3, 10*1e3, 20*1e3, 40*1e3, 80*1e3, 120*1e3, 200*1e3]

figure(5,figsize=(12,10))
for PNe, Ge, in zip(PN, G):
    scatter([PNe]*len(Ge), Ge, color=['red', 'green'])
grid()
xlim(xmin=0, xmax=200000)
#ylim(ymin=0, ymax=1)
xlabel('Number of particles')
ylabel(r'Energy release rate')
legend(['$G_{simulation}$','$G_{analytical}$'])

我得到的传说如下:

如您所见,颜色未正确归属。我需要将red分配给G_{分析},green分配给G_{模拟}。我在这里做错了什么?

谢谢

所以这是交易,只需将绘图格式更改为

Gs=[8.5*1e-2, 7.8*1e-2, 6*1e-2, 4.7*1e-2, 3.8*1e-2, 3.2*1e-2, 2.6*1e-2]
Ga=[1.42*1e-5, 1.19*1e-5, 1.03*1e-5, 8.95*1e-6, 7.63*1e-6, 7.12*1e-6, 5.72*1e-6]
PN=[5*1e3, 10*1e3, 20*1e3, 40*1e3, 80*1e3, 120*1e3, 200*1e3]

figure(5,figsize=(12,10))
scatter(PN, Gs, color='red', label='$G_{Simulation}$')
scatter(PN, Ga, color='green', label='$G_{Analytical}$')
grid()
xlim(xmin=0, xmax=200000)
#ylim(ymin=0, ymax=1)
xlabel('Number of particles')
ylabel(r'Energy release rate')
legend()

做这项工作。结果如下:具有正确颜色分配的标签

我们开始吧。

最新更新