\n \n \n \n \n \n \n\n\"\"\"\n\n# Instantiate Renderer\nrenderer = ChromePdfRenderer()\n\n# Enable JavaScript in our RenderingOptions\nrenderer.RenderingOptions.EnableJavaScript = True\nrenderer.RenderingOptions.WaitFor.RenderDelay(1000)\nrenderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print\n\npdf = renderer.RenderHtmlAsPdf(htmlWithJs)\n\n# Export to a file or Stream\npdf.SaveAs(\"js-chart.pdf\")","about":{"@id":"https://ironpdf.com/zh/python/examples/js-charts-to-pdf/#product"},"targetProduct":{"@id":"https://ironpdf.com/zh/python/examples/js-charts-to-pdf/#product"},"keywords":"在PDF中渲染图表 Python,Python 渲染图表为PDF,IronPDF for Python 图表,将图形转换为PDF在Python中,从图表生成PDF Python,Python PDF 图表渲染教程","datePublished":"2023-08-23","dateModified":"2026-05-27"}]}
IRONSOFTWAREHOME
在PDF中渲染图表
from ironpdf import *

htmlWithJs = """
<!DOCTYPE html>
<html>
    <head>
        <meta charset='utf-8' />
        <title>C3 Bar Chart</title>
    </head>
    <body>
        <div id='chart' style='width: 950px;'></div>
        <script src='https://d3js.org/d3.v4.js'></script>
        <!-- Load c3.css -->
        <link href='https://cdnjs.cloudflare.com/ajax/libs/c3/0.5.4/c3.css' rel='stylesheet'>
        <!-- Load d3.js and c3.js -->
        <script src='https://cdnjs.cloudflare.com/ajax/libs/c3/0.5.4/c3.js'></script>
        <script>
            Function.prototype.bind = Function.prototype.bind || function (thisp) {
                var fn = this;
                return function() {
                    return fn.apply(thisp, arguments);
                };
            };
            var chart = c3.generate({
            bindto: '#chart',
            data: {
                columns: [
                    ['data1', 30, 200, 100, 400, 150, 250],
                    ['data2', 50, 20, 10, 40, 15, 25]
                ]
            }
            });
        </script>
    </body>
</html>
"""

# Instantiate Renderer
renderer = ChromePdfRenderer()

# Enable JavaScript in our RenderingOptions
renderer.RenderingOptions.EnableJavaScript = True
renderer.RenderingOptions.WaitFor.RenderDelay(1000)
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print

pdf = renderer.RenderHtmlAsPdf(htmlWithJs)

# Export to a file or Stream
pdf.SaveAs("js-chart.pdf")
pip install ironpdf
在PDF中渲染图表

在PDF中渲染图表

IronPDF for Python可以将交互式JavaScript图表库(如D3.js和C3.js)直接渲染为PDF,无需额外的图像转换步骤即可生成高质量的图表图像。

开始

将您的图表构建为包含必要CDN脚本标签的独立HTML字符串。 设置WaitFor.RenderDelay以确保图表库在捕获PDF之前完成绘制。 可选地,将Print以应用打印专用样式。

理解代码

  • EnableJavaScript:需要执行生成图表的D3和C3脚本。
  • WaitFor.RenderDelay(1000):页面加载后等待1000毫秒。 由于图表库执行异步渲染,因此相比简单的DOM操作,需要更长的延迟。
  • @media print CSS规则,通常去除交互控件并产生在PDF中更干净的图表布局。
  • RenderHtmlAsPdf(htmlWithJs):将完整的HTML(包括已加载的图表)渲染为PDF文档。

支持的图表库

因为IronPDF使用Chrome渲染引擎,所以任何在浏览器中运行的JavaScript图表库也可以正确渲染为PDF。 这包括Chart.js、Highcharts、ApexCharts、ECharts等。

学习如何使用IronPDF for Python将HTML转换为PDF!

准备开始了吗?

版本:2026.9刚刚发布

Key in blue circle

立即获取免费的 30 天试用版密钥。

Your trial license will be sent to your email address

无任何限制。100% 解锁。无需信用卡。

OR
bullet_checked无需信用卡或创建账户无任何限制。100% 解锁。无需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
预约您的免费现场演示
Booking Badge

深受全球数百万工程师信赖

Iron Software 的客户徽标
获取您的无义务咨询
填写下面的表格或通过sales@ironsoftware.com
您的资料将始终保密。
深受全球数百万工程师信赖
Iron Software 的客户徽标
立即获取您的免费30 天试用密钥。
无需信用卡或创建账户
Python 模块下载 PDF
using pip 安装

版本: 2026.9

  1. 下载 并安装 Python 3.7+。
  2. 如果尚未安装,请从 pypi.org 安装 pip。
  3. 在终端中执行上述命令。
Python PDF 模块
下载 模块

版本: 2026.9

手动安装到您的项目中

  1. 下载软件包
  2. 在终端中运行此命令
    pip install ironpdf-2026.9-py37-none-win_amd64.whi

$999 起