\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/pl/python/examples/js-charts-to-pdf/#product"},"targetProduct":{"@id":"https://ironpdf.com/pl/python/examples/js-charts-to-pdf/#product"},"keywords":"renderowanie wykresów w PDF Python,Python renderowanie wykresów na PDF,wykresy IronPDF Python,konwersja grafów na PDF w Python,generowanie PDF z wykresów Python,Python samouczek renderowania wykresów w PDF","datePublished":"2023-08-23","dateModified":"2026-05-27"}]}
IRONSOFTWAREHOME
Renderowanie wykresow w 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")
NuGet Download
Install-Package ironpdf
Renderowanie wykresow w PDF

Renderowanie wykresow w PDF

IronPDF for Python może renderować interaktywne biblioteki wykresów JavaScript, takie jak D3.js i C3.js, bezpośrednio do PDF, tworząc wysokiej jakości obrazy wykresów bez dodatkowego kroku konwersji obrazu.

Pierwsze kroki

Zbuduj swój wykres w samodzielnym ciągu HTML zawierającym niezbędne skrypty CDN. Ustaw EnableJavaScript = True i dodaj obfite WaitFor.RenderDelay, aby upewnić się, że biblioteka wykresów zakończyła rysowanie przed przechwyceniem PDF. Opcjonalnie ustaw CssMediaType na Print, aby zastosować style specyficzne dla druku.

Zrozumienie kodu

  • EnableJavaScript: Wymagane do wykonania skryptów D3 i C3, które generują wykres.
  • WaitFor.RenderDelay(1000): Czeka 1000 milisekund po załadowaniu strony. Biblioteki wykresów wykonują renderowanie asynchroniczne, więc potrzebna jest dłuższa zwłoka w porównaniu do prostych manipulacji DOM.
  • CssMediaType = PdfCssMediaType.Print: Aktywuje reguły CSS @media print, które zazwyczaj usuwają interaktywne elementy sterujące i tworzą czystszy układ wykresu w PDF.
  • RenderHtmlAsPdf(htmlWithJs): Renderuje kompletny HTML — w tym wyrenderowany wykres — jako dokument PDF.

Obsługiwane biblioteki wykresów

Ponieważ IronPDF używa silnika renderowania Chrome, każda biblioteka wykresów JavaScript działająca w przeglądarce zostanie również poprawnie wyrenderowana do PDF. Dotyczy to Chart.js, Highcharts, ApexCharts, ECharts i innych.

Naucz sie konwertowac HTML do PDF przy uzyciu IronPDF for Python!

Gotowy, aby rozpocząć?

Wersja:2026.6właśnie wydany

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta