如何在子图中绘制对角线?

时间:2016-06-16 05:21:21

标签: python matplotlib candlestick-chart

我尝试绘制对角线,但不起作用。

我可以使用axhline和axvline

绘制水平和垂直线

但是我不知道对角线我使用的情节但它不起作用

以下是我的一些代码和结果:

while (loop < candleLength) :
        date = stockData['date'][loop]
        date = dateToFloat(date)
        append = date, stockData['open'][loop], stockData['high'][loop], stockData['low'][loop], stockData['close'][loop]
        ohlc.append(append)
        loop += 1

    fig = plt.figure()
    ax = plt.subplot2grid((1,1), (0,0))

    candlestick_ohlc(ax, ohlc, width=0.66, colorup='#4dff4d', colordown='#ff471a')    # plt.plot([736062.0, 736118.0], [70, 70], 'k-', lable = 'example line')


    for label in ax.xaxis.get_ticklabels():
        label.set_rotation(45)

    ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d'))
    ax.xaxis.set_major_locator(mondays)
    ax.grid(True)


    ax.text(buyPointTypeFloat, buyPrice, 'BUY', fontdict=font_dict)
    ax.text(sellPointTypeFloat, sellPrice, 'SELL', fontdict=font_dict)
    # ax.plot(x=buyPrice, y=sellPrice)
    ax.axhline(y=sellPrice,color='k',ls='dashed')
    ax.axhline(y=buyPrice,color='k',ls='dashed')
    plt.xlabel('Date')
    plt.ylabel('Price')
    plt.title(stockName)
    plt.subplots_adjust(left=0.09, bottom=0.20, right=0.94, top=0.90, wspace=0.2, hspace=0)
    plt.show()

result pic

从图片中你可以看到我在买入/卖出价格中有2条水平线

但我想改用diogonal line。

谢谢。

2 个答案:

答案 0 :(得分:0)

好吧,使用传统的产品线:

ax.plot((xStart, xEnd), (yStart, yEnd), ...)

答案 1 :(得分:0)

尝试添加

plt.plot([0, 90], [0, 90], '-')

或你的情节的适当值。