2016-01-02 78 views
1

我使用的Ruby on Rails的Axlsx寶石(https://github.com/randym/axlsx)來創建與列圖形的Excel出口,使用以下代碼:在Axlsx列之間調節空間中產生的條形圖

p = Axlsx::Package.new(author: @current_user.username, workbook: Axlsx::Workbook.new) 
wb = p.workbook 
sheet = wb.add_worksheet(name: 'My worksheet') 
sheet.add_chart(Axlsx::Bar3DChart, start_at: 'A2', end_at: 'K28') do |chart| 
    chart.barDir = :col 
    chart.show_legend = false 
    chart.valAxis.gridlines = true 
    chart.catAxis.gridlines = false 
    chart.gapWidth = '50%' 
    chart.add_series(data: [1,2,3], labels: ['This', 'That', 'Other'], title: 'My chart') 
end 

綜觀the docs,我似乎可以用gapWidth=來調整條形圖之間的空間。使用chart.gapWidth = '50%'不會引發錯誤,但是當我在Excel中打開生成的文件時,它會告訴我文件已損壞。如果我刪除該行,一切工作正常。

誰能告訴我怎麼可以在我的生成的圖形調整杆之間的空間?

+0

非常怪異。在文檔中,我發現:「驗證正則表達式的差距量百分比/ 0 *(([0-9])|([1-9] [0-9])|([1-4] [0-9] [ 0-9])| 500)%/」,之後我去了‘正則表達式串產生’,扭轉這種..和結果是這樣的:‘500%,0000029%......’......我試着所有這些,但也得到文件損壞。 =( –

回答

1

似乎是因爲給定的值被逐字插入間隙寬度節點,儘管該值不應該包括在所發射的值「%」符號的百分比。

因此,對於你的例子會產生,我認爲只是刪除在驗證%符號要求的節點<c:gapWidth val="50%"/>而不是<c:gapWidth val="50"/>

最好的解決。

歡迎你用我的克隆回購,現在它有一個修復。 https://github.com/kstuart/axlsx

相關問題