2017-06-14 89 views
1

我打算使用Python PPTX創建以下圖表。 enter image description here用於旋轉圖表數據標籤的Python PPTX解決方法函數

下面代碼實現顏色設置,字體大小和數字格式。不過,我現在還無法轉動數據標籤,因爲我相信這個API尚不可用在python-PPTX 0.6.5

lbl = plot.data_labels 
lbl.font.size = config["DATA_LABEL_FONT_SIZE"] 
lbl.font.color.rgb = config["DATA_LABEL_FONT_COLOR"] 
lbl.number_format = config["DATA_LABEL_NUMBER_FORMAT"] 
lbl.position = config["DATA_LABEL_POSITION"] 

要開始,我之前已經創建了兩個最小的幻燈片和旋轉後,並使用opc-diag工具來查找差異。

<a:bodyPr rot="-5400000" spcFirstLastPara="1" vertOverflow="ellipsis" 
vert="horz" wrap="square" lIns="38100" tIns="19050" rIns="38100" 
bIns="19050" anchor="ctr" anchorCtr="1">\n     
<a:spAutoFit/>\n </a:bodyPr>\n 

我相信我需要rot="-5400000" XML元素添加到lbl(plot.data_labels),但對如何實現這一目標並不明確。我已經使用dir(),圖表和它的孩子們在._element.xml,但沒能找到<a:bodyPr>標籤。

回答

1

我在下面嘗試,它的工作原理。

if config["DATA_LABEL_VERTICAL"]: 
    txPr = lbl._element.get_or_add_txPr() 
    txPr.bodyPr.set('rot','-5400000') 
+0

做得好idazuwaika!我會使用'txPr'作爲變量名稱而不是'r',只是爲了與'python-pptx'中使用的約定保持一致,但是這使得作業完美無缺:) – scanny

+0

謝謝。終於可以理解*非常*一點點的變通辦法功能..是啊,我正在改變變量的名字,以保持約定 – idazuwaika