haskell - 在 Haskell-Chart 中生成 ByteString

标签 haskell charts haskell-chart

我根据示例使用Haskell-Chart eample-1 。 Haskell-Chart 生成文件内容

toFile def "example1_big.png" $ do
...

是否可以将图表内容生成为 ByteString 而不是文件? 我在文档中找不到解决方案。

最佳答案

不幸的是,这不可能是直接的方式。 toFile调用 cairo 中的函数像withPDFSurface这样的库, withSVGSurface它们本身调用 cairo C 库并且只接受文件名。

您始终可以写入临时文件并读回内容,如下所示:

import System.IO.Temp  -- from the temporary package
import qualified Data.ByteString.Char8 as BS

...
bs <- withSystemTempFile "chart-XXXXXXX" $ \path _ -> do
        toFile def path $ do ...
        BS.readFile path

关于haskell - 在 Haskell-Chart 中生成 ByteString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39590596/

相关文章:

haskell - 将字符串拆分为子字符串

string - Data.Text 的好处

javascript - Highcharts 柱形图深入分析

charts - 如何让 JavaFX 图表 NumberAxis 只显示整数值,而不是 double 值

haskell - Haskell图表库中如何设置轴的范围

networking - Haskell 网络.浏览器 HTTPS 连接

haskell - 使用 except 变压器评估自由 Monad

javascript - JS Flot 图表 : 2 y-axes with the same data. 一张是数字数据,一张是百分比

Haskell Chart 破坏堆栈构建