根据两个numpy数组更改了x轴脊线颜色

时间:2019-04-24 08:14:57

标签: python pandas matplotlib

我的代码如下:

price = np.array(df.price) low_price = np.array(df['mid price'])

price等于:[nan,nan, 2, 3, nan,nan, 1]

low_price等于:[1, 2, 2, 3, 3, 4, 1]

当我绘制它们时:

plt.plot(low_price, 'k', linewidth=2)
plt.plot(price, 'y', linewidth=2)

它们以不同的颜色绘制在同一条线上,但是如何更改X轴呢?我不知道..谢谢!

这或多或少与以下问题有关:Matplotlib: Changing the color of an axis

但是我只想更改特定数据点的颜色。

1 个答案:

答案 0 :(得分:1)

一个(不太好)的技巧可能是通过关闭其剪辑在轴的一部分上画一条线:

import numpy as np
import matplotlib.pyplot as plt

price = [np.nan, np.nan, 2, 3, np.nan, np.nan, 1]
low_price = [1, 2, 2, 3, 3, 4, 1]

plt.plot(low_price, "k", lw=2)
plt.plot(price, "y", lw=2)

# plot line on axes
line = plt.plot([2, 3], [0, 0], "y", lw=2)[0]
line.set_clip_on(False)  # turn off clip
plt.ylim(0, 4)  # set ylim so axes doesn't move
plt.show()

enter image description here