gpt4 book ai didi

ruby - 如何使用axlsx添加数据标签

转载 作者:数据小太阳 更新时间:2023-10-29 08:24:19 24 4
gpt4 key购买 nike

我正在尝试使用 axlsx for ruby​​ 生成饼图。一切正常,但我似乎无法为每个“饼图切片”显示数据标签。我正在拍摄的或多或少是这样的 image . (即它应该有数据标签和引导线)。让标签只包含数值并像往常一样包含带有颜色映射的图例也很好。

有人知道怎么做吗?

谢谢

最佳答案

我是 randym,axlsx 的作者。简短的版本是这还没有实现,所以您将无法按照您的图像将标签添加到图表中。

规范中最大的缺失部分是(ECMA-376 - 第 1 部分)

21.2.2.49 dLbls(数据标签)

需要将其插入到系列、图表或两者中,因为它似乎是所有这三者的共同元素。

我将在本周晚些时候进行更深入的研究,但如果您愿意为 axlsx 做出贡献 - 请在 freenode (#axlsx) 上联系我或将问题发布到 repo https://github.com/randym/axlsx

更新

事实证明这比我预期的要容易得多。

现在有一个用于饼图的 master ( https://github.com/randym/axlsx ) 工作版本。我将在接下来的几天内更新其余受支持的图表类型,并争取在下周正式发布。

谢谢你让我知道你需要这个。

这里有一个简单的例子来说明如何使用它:

require 'axlsx'
p = Axlsx::Package.new
wb = p.workbook

# Pie Chart
wb.add_worksheet(:name => "Pie Chart") do |sheet|
sheet.add_row ["First", "Second", "Third", "Fourth"]
sheet.add_row [1, 2, 3, 4]
sheet.add_chart(Axlsx::Pie3DChart, :start_at => [0,2], :end_at => [5, 15], :title=> 'dark corner here') do |chart|
chart.add_series :data => sheet["A2:D2"], :labels => sheet["A1:D1"]
chart.d_lbls.show_val = true
chart.d_lbls.show_percent = true
chart.d_lbls.d_lbl_pos = :outEnd
chart.d_lbls.show_leader_lines = true
end
end

p.serialize 'pie_chart_with_data_labels.xlsx'

d_lbls 的可用属性是:

lbl_pos 必须是 :bestFit, :b, :ctr, :inBase, :inEnd, :l, :outEnd, :r, :t 之一默认情况下 axlsx 将使用 :bestFit

和以下 bool 属性:

show_legend_key

show_val

show_cat_name

show_ser_name

show_percent

显示气泡大小

show_leader_lines

关于ruby - 如何使用axlsx添加数据标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11518065/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com