Reportlab - 饼图填充颜色

发布于 2024-09-26 20:48:25 字数 493 浏览 3 评论 0原文

我正在reportlab 中制作一个简单的饼图。我在文档中找不到如何更改每个单独的馅饼填充颜色。

pie_chart = Drawing(200, 200)
pc = Pie()
pc.x = 65
pc.y = 15
pc.width = 150
pc.height = 150
pc.data = [65,13,12,9,1]
pc.labels = ['Name','Another','Yet Another','Test','Stack']

pc.slices[1]. // This is where I need the fill color property.

pie_chart.add(pc)
renderPM.drawToFile(pie_chart, '/images/temp/pie_chart.png', 'PNG')
p.drawImage('/images/temp/pie_chart.png', 10, 60, width=150, height=150, mask=None)

I am making a simple pie chart in reportlab. I can not find in the docs how to change each individual pies fill color.

pie_chart = Drawing(200, 200)
pc = Pie()
pc.x = 65
pc.y = 15
pc.width = 150
pc.height = 150
pc.data = [65,13,12,9,1]
pc.labels = ['Name','Another','Yet Another','Test','Stack']

pc.slices[1]. // This is where I need the fill color property.

pie_chart.add(pc)
renderPM.drawToFile(pie_chart, '/images/temp/pie_chart.png', 'PNG')
p.drawImage('/images/temp/pie_chart.png', 10, 60, width=150, height=150, mask=None)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

佼人 2024-10-03 20:48:25

好的,有几种方法可以做到这一点。

该属性是 .fillColor,但您必须确保正确地为其提供颜色。下面有两种方式,CMYK和RGB。

  1. 使用 CMYK
    猫颜色 = PCMYKColor(0,0,0,100)

    pc.slices[0].fillColor = catColor

    查看此代码段

  2. 使用 RGB 颜色
    猫颜色 = 颜色(0.10,0.26,0.46)

    pc.slices[0].fillColor = catColor

    • 显然你不需要CatColor变量,你可以将线条放在一起。

查看有关颜色的详细信息 这里< /a>(reportlab 文档,请参阅第 23 页)

Ok there is a couple ways to do this.

The property is .fillColor, but you have to make sure you provide the color to it correctly. Below are two ways, with CMYK and RGB.

  1. Using CMYK
    catColor = PCMYKColor(0,0,0,100)

    pc.slices[0].fillColor = catColor

    See this snippet

  2. Using RGB Color
    catColor = Color(0.10,0.26,0.46)

    pc.slices[0].fillColor = catColor

    • Obviously you do not need CatColor variable, you can put the lines together.

View more info about colors here (reportlab docs, see page 23)

傾旎 2024-10-03 20:48:25

您可以使用 color.HexColor("#f00")。查看以下示例`

十六进制颜色代码

You can use color.HexColor("#f00"). Checkout the following examples`

Hex color codes

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文