Hi everyone!
I recently created a custom Radar Chart visualization. A couple of months ago, exporting it to PDF worked perfectly, but now I’m getting empty areas instead of the chart in pfdf file.
Does anyone know how to fix this?
@jeremytchang Could u help me?
Yes. This issue is common when PDF export libraries fail to render canvas or SVG-based charts after a browser or library update.
Here are the main causes and fixes:
1. Rendering Method Changed :
If your radar chart uses (e.g., Chart.js, D3 with canvas) and the export method relies on HTML-to-PDF, the canvas may not render properly anymore.
Fix: Before exporting, convert the canvas to an image and insert it into the PDF:
Works with jsPDF and similar libraries.
2. SVG Not Embedded Correctly
If your chart library renders SVG (e.g., D3, Plotly), the PDF exporter might not handle it.
Fix: Serialize the SVG and render as an image:
3. Headless Browser Change (if using Puppeteer or wkhtmltopdf)
If you’re generating the PDF server-side, newer versions of Chromium or wkhtmltopdf sometimes skip canvas renderi
-–
4. Chart.js v4+ Specific Change
If using Chart.js ≥4.0, you must call chart.update() or chart.render() before export to ensure a full canvas draw.
Also, check if toBase64Image() now requires async:
-–
If you tell me which chart library and export method (e.g., Chart.js + jsPDF, D3 + html2canvas, etc.) you’re usinwg, I
I also create several custom visualizations using D3 for my clients so that they can add animations and features.
Does LookerStudio have plans to create a “renderingFinished” callback similar to PowerBI, allowing each visualization to send this information so that the PDF worker can wait for each visualization to be rendered? Or else, provide an “isExport” metadata type to allow the visualization to adapt to this mode?
Because it seems a bit counterproductive to convert our graphs into static images.