我从数据中得出了两个数字。现在,我想在这两条曲线之间填充颜色。 如何在图1和图2之间填充红色/灰色?可以在两条曲线之间写一些东西吗?
.sh
答案 0 :(得分:3)
有一对plt.fill_between()
,它们共享相同的x数据。
就图形精度而言,这对您的示例来说是正确的,因此您可以进行测试以简单地添加
plt.fill_between(A, B, C, color='grey')
您的脚本。
但是,如果您的两条曲线的x值明显不同,则可能必须对此命令重新采样一条或两条。
示例,包括用于放置文本的命令以及如何使某些事情更高效和可读性
import matplotlib.pyplot as plt
import numpy as np
A1 = [433, 628, 818, 1033]
A = np.log(A1) / np.log(2)
B = [0.3831877729, 0.400606980300000, 0.411592505900000, 0.420391061500000]
C = [0.309248554900000, 0.317584568100000, 0.326892109500000, 0.328224407200000]
D = [433, 628, 818, 1032]
D1 = np.log(D) / np.log(2)
plt.figure(figsize=(10, 4.75), dpi=100)
plt.plot(A, B, color='b')
plt.plot(D1, C, color='g')
plt.fill_between(A, B, C, color='grey')
plt.text(9.4, .36, 'New idea', va='center', ha='center', size=24)
plt.grid(True)
plt.show()