繁体   English   中英

如何使用python-pptx删除聚集条形图中的轴线?

[英]How remove axis lines in clustered bar chart using python-pptx?

这是我必须生成图表的示例代码(图片链接如下)。

x, y, cx, cy = Inches(2), Inches(2), Inches(6), Inches(4.5)
graphic_frame = slide.shapes.add_chart(
    XL_CHART_TYPE.BAR_CLUSTERED, x, y, cx, cy, chart_data
)

chart = graphic_frame.chart

chart.chart_title.has_text_frame=True
chart.chart_title.text_frame.text= "1_TRS_Year"
chart.chart_style = 1
    
    
plot = chart.plots[0]
plot.has_data_labels = True
data_labels = plot.data_labels
    
data_labels.font.size = Pt(9)
data_labels.font.color.rgb = RGBColor(0,0,0)
data_labels.number_format = '0%'
data_labels.position = XL_LABEL_POSITION.OUTSIDE_END

category_axis.has_major_gridlines = False
category_axis.has_minor_gridlines = False
category_axis.minor_tick_mark = XL_TICK_MARK.OUTSIDE
category_axis.tick_labels.font.italic = False
category_axis.tick_labels.font.size = Pt(12)
category_axis.tick_label_position = XL_TICK_LABEL_POSITION.LOW
    
    
value_axis = chart.value_axis
value_axis.has_major_gridlines = False
value_axis.has_minor_gridlines = False
    
value_axis.minor_tick_mark = XL_TICK_MARK.OUTSIDE
value_axis.tick_labels.font.italic = False
value_axis.tick_labels.font.size = Pt(12)
value_axis.tick_label_position = XL_TICK_LABEL_POSITION.LOW

绘制删除轴线

我相信这段代码会满足你的要求:

chart.category_axis.visible = False
chart.value_axis.visible = False

如果您想隐藏轴线但保留刻度线等,请尝试将轴线的宽度设置为零:

chart.category_axis.format.line.width = 0

这不会删除轴线,但会使其变白,因此它也不再可见:

from pptx.dml.color import RGBColor

category_axis.format.line.color.rgb = RGBColor(255, 255, 255)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM