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

How to draw a diagonal line in subplot?

我尝试画一条对角线,但它不起作用。

我可以使用 axhline 和 axvline 绘制水平线和垂直线

但我不知道对角线我用过 plot 但它不起作用

这是我的一些代码和结果:

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 条水平线 buy/sell 价格

但我想改用对角线。

谢谢。

好吧,使用常规线路:

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

尝试添加

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

或您的绘图的适当值。