Matplotlib 在 X 值中绘制 Julian Days python

Matplotlib plotting Julian Days in X values python

美好的一天,我在绘制从 16000 到 17000 的条形图 x 值时遇到问题,我不确定如何解决它。提前谢谢你。

plt.title("Site Data Availability")
plt.xlabel("Julian Year Dates (YYDDD)")
plt.ylabel("Instrument Sites")
plt.axhline(y="BTK", color='r', linestyle='-', linewidth=10)
plt.axhline(y="BTK", xmin=16000, xmax=17000, color='b', linestyle='-', linewidth=10) #issues with this line
plt.xlim(15000, 20000)
plt.xticks(rotation=90)

plt.show()

编辑您的台词:

plt.axhline(y="BTK", xmin=.2, xmax=.4, color='b', linestyle='-', linewidth=10)

解释: xminxmax 必须是 0 到 1 之间的值。

在你的代码中,0用15000表示,1对应20000。

您可以使用线性插值器并找出 16000 (0.2) 和 17000 (0.4) 的百分比。

使用hlines:

plt.title("Site Data Availability")
plt.xlabel("Julian Year Dates (YYDDD)")
plt.ylabel("Instrument Sites")
plt.axhline(y="BTK", color='r', linestyle='-', linewidth=10)
plt.hlines(y="BTK", xmin=16000, xmax=17000, color='b', linestyle='-', linewidth=10, zorder=10) #issues with this line
plt.xlim(15000, 20000)
plt.xticks(rotation=90)

plt.show()

输出:

在哪里

  • axhline -- 在轴上添加一条水平线。
  • hlines -- 在数据坐标中添加水平线。阴谋 从 xmin 到 xmax 的每个 y 的水平线。