如何在pygal中添加垂直的x轴线?

tsa*_*512 6 pygal

我想放入类似于matplotlib中提供的以下内容的axspan,以便在图形中有一条垂直线指出一个位置。这是使用pygal的折线图

plt.axvspan(fin_loc, fin_loc+1, color='red', alpha=0.5)

Ser*_*dev 2

似乎pygal不支持在其图表上自定义附加绘图。

然而,可以使用XY类型图表绘制垂直线。例如:

chart = pygal.XY()
chart.add('Here is axvspan', [(1, -5), (1, 5)])
Run Code Online (Sandbox Code Playgroud)

pygal也不支持在一张绘图上使用多种图表类型。

因此,您可以使用解决方法绘制垂直线和折线图:将折线图替换为 XY 图表类型,绘制垂直线,然后绘制折线图。由于 XY 图表每个点需要两个值,因此您可以为其提供虚拟连续 X 值。例如,代替:

chart = pygal.Line()
chart.add('Chart1', [16, 25, 31])
Run Code Online (Sandbox Code Playgroud)

你写:

chart = pygal.XY()
chart.add('Here is axvspan', [(1, -5), (1, 5)])
chart.add('Chart1', [(1, 16), (2, 25), (3, 31)])
Run Code Online (Sandbox Code Playgroud)

就是这样!