fastchart 1.0.2 — SVG vs PNG vs JPG vs WebP
41 chart variants from the README, rendered four ways:
renderSvg() (vector source),
renderPng() (plutovg + libpng),
renderJpeg() at default quality 88 (plutovg + libjpeg-turbo),
renderWebp() (plutovg + libwebp).
Generated 2026-05-16 12:45.
Total bytes: SVG 1,803.9 KB ·
PNG 2,348.4 KB ·
JPG 2,221.0 KB ·
WebP 1,017.8 KB.
1. LineChart — daily active users
Source: docs/examples/01_line_basic.php
SVG (vector) 41.3 KB
PNG (plutovg → libpng) 53.9 KB
JPG q88 (plutovg → libjpeg-turbo) 45.5 KB
WebP (plutovg → libwebp) 21.8 KB
2. AreaChart — stacked tiers
Source: docs/examples/27_area_stacked.php
SVG (vector) 57.0 KB
PNG (plutovg → libpng) 65.9 KB
JPG q88 (plutovg → libjpeg-turbo) 55.2 KB
WebP (plutovg → libwebp) 28.4 KB
3. BarChart — grouped (tickets opened vs closed)
Source: docs/examples/03_bar_grouped.php
SVG (vector) 63.7 KB
PNG (plutovg → libpng) 53.0 KB
JPG q88 (plutovg → libjpeg-turbo) 68.1 KB
WebP (plutovg → libwebp) 23.3 KB
4a. BarChart — horizontal, stacked, with SLA bands
Source: docs/examples/04_bar_horizontal.php
SVG (vector) 61.7 KB
PNG (plutovg → libpng) 49.1 KB
JPG q88 (plutovg → libjpeg-turbo) 60.6 KB
WebP (plutovg → libwebp) 21.8 KB
4b. BarChart — floating bars (forecast salary band)
Source: docs/examples/28_bar_variants.php
SVG (vector) 66.0 KB
PNG (plutovg → libpng) 49.2 KB
JPG q88 (plutovg → libjpeg-turbo) 48.2 KB
WebP (plutovg → libwebp) 19.1 KB
4c. BarChart — layered stack (visual envelope)
Source: docs/examples/28_bar_variants.php
SVG (vector) 56.5 KB
PNG (plutovg → libpng) 46.4 KB
JPG q88 (plutovg → libjpeg-turbo) 51.6 KB
WebP (plutovg → libwebp) 20.1 KB
4. ScatterChart — with quadratic trend
Source: docs/examples/06_scatter_trend.php
SVG (vector) 66.4 KB
PNG (plutovg → libpng) 72.3 KB
JPG q88 (plutovg → libjpeg-turbo) 56.4 KB
WebP (plutovg → libwebp) 28.7 KB
5. BubbleChart — risk vs effort vs cost
Source: docs/examples/14_bubble.php
SVG (vector) 45.9 KB
PNG (plutovg → libpng) 59.6 KB
JPG q88 (plutovg → libjpeg-turbo) 42.4 KB
WebP (plutovg → libwebp) 19.9 KB
6. StockChart — OHLCV + MA overlays + volume
Source: docs/examples/07_stock_candle_ma.php
SVG (vector) 96.8 KB
PNG (plutovg → libpng) 129.8 KB
JPG q88 (plutovg → libjpeg-turbo) 173.2 KB
WebP (plutovg → libwebp) 78.1 KB
7. RadarChart — feature parity scorecard
Source: docs/examples/08_radar.php
SVG (vector) 46.7 KB
PNG (plutovg → libpng) 129.5 KB
JPG q88 (plutovg → libjpeg-turbo) 67.7 KB
WebP (plutovg → libwebp) 40.9 KB
8. PolarChart — antenna gain pattern
Source: docs/examples/16_polar.php
SVG (vector) 25.0 KB
PNG (plutovg → libpng) 140.0 KB
JPG q88 (plutovg → libjpeg-turbo) 67.2 KB
WebP (plutovg → libwebp) 41.0 KB
9. SurfaceChart — 2D scalar field
Source: docs/examples/15_surface_contour.php
SVG (vector) 33.7 KB
PNG (plutovg → libpng) 20.1 KB
JPG q88 (plutovg → libjpeg-turbo) 47.9 KB
WebP (plutovg → libwebp) 12.8 KB
10. ContourChart — filled isolines
Source: docs/examples/15_surface_contour.php
SVG (vector) 51.6 KB
PNG (plutovg → libpng) 86.9 KB
JPG q88 (plutovg → libjpeg-turbo) 61.5 KB
WebP (plutovg → libwebp) 34.8 KB
11. PieChart — donut with exploded slice
Source: docs/examples/05_pie_donut.php
SVG (vector) 32.2 KB
PNG (plutovg → libpng) 71.2 KB
JPG q88 (plutovg → libjpeg-turbo) 46.9 KB
WebP (plutovg → libwebp) 25.1 KB
12. GaugeChart — zoned half-circle
Source: docs/examples/10_gauge.php
SVG (vector) 20.3 KB
PNG (plutovg → libpng) 46.9 KB
JPG q88 (plutovg → libjpeg-turbo) 30.6 KB
WebP (plutovg → libwebp) 18.1 KB
13. LinearMeter — horizontal SLA bar
Source: docs/examples/36_linear_meter.php
SVG (vector) 17.1 KB
PNG (plutovg → libpng) 16.2 KB
JPG q88 (plutovg → libjpeg-turbo) 16.9 KB
WebP (plutovg → libwebp) 6.8 KB
14. GanttChart — Q4 release timeline
Source: docs/examples/17_gantt.php
SVG (vector) 55.0 KB
PNG (plutovg → libpng) 44.0 KB
JPG q88 (plutovg → libjpeg-turbo) 49.2 KB
WebP (plutovg → libwebp) 19.0 KB
15. BoxPlot — latency by service
Source: docs/examples/09_boxplot.php
SVG (vector) 59.3 KB
PNG (plutovg → libpng) 50.9 KB
JPG q88 (plutovg → libjpeg-turbo) 50.4 KB
WebP (plutovg → libwebp) 19.7 KB
16. Treemap — revenue by product line
Source: docs/examples/32_treemap.php
SVG (vector) 50.2 KB
PNG (plutovg → libpng) 40.1 KB
JPG q88 (plutovg → libjpeg-turbo) 48.6 KB
WebP (plutovg → libwebp) 18.5 KB
17. Funnel — signup → paid conversion
Source: docs/examples/33_funnel.php
SVG (vector) 43.7 KB
PNG (plutovg → libpng) 56.9 KB
JPG q88 (plutovg → libjpeg-turbo) 38.5 KB
WebP (plutovg → libwebp) 21.2 KB
18. Waterfall — Q3 income statement
Source: docs/examples/34_waterfall.php
SVG (vector) 55.4 KB
PNG (plutovg → libpng) 48.1 KB
JPG q88 (plutovg → libjpeg-turbo) 55.3 KB
WebP (plutovg → libwebp) 19.3 KB
19. Heatmap — hourly traffic, last week
Source: docs/examples/35_heatmap.php
SVG (vector) 35.3 KB
PNG (plutovg → libpng) 22.7 KB
JPG q88 (plutovg → libjpeg-turbo) 58.5 KB
WebP (plutovg → libwebp) 16.8 KB
20. BulletChart — Q3 revenue vs plan
Source: docs/examples/43_bullet.php
SVG (vector) 18.1 KB
PNG (plutovg → libpng) 17.4 KB
JPG q88 (plutovg → libjpeg-turbo) 16.7 KB
WebP (plutovg → libwebp) 7.0 KB
21. ParetoChart — defect categories with 80/20 line
Source: docs/examples/44_pareto.php
SVG (vector) 81.2 KB
PNG (plutovg → libpng) 72.7 KB
JPG q88 (plutovg → libjpeg-turbo) 66.9 KB
WebP (plutovg → libwebp) 29.3 KB
22. CalendarHeatmap — daily activity for one year
Source: docs/examples/45_calendar_heatmap.php
SVG (vector) 60.1 KB
PNG (plutovg → libpng) 40.1 KB
JPG q88 (plutovg → libjpeg-turbo) 67.3 KB
WebP (plutovg → libwebp) 33.8 KB
23. SunburstChart — engineering workload by team
Source: docs/examples/46_sunburst.php
SVG (vector) 20.5 KB
PNG (plutovg → libpng) 65.1 KB
JPG q88 (plutovg → libjpeg-turbo) 38.4 KB
WebP (plutovg → libwebp) 22.6 KB
24. SankeyChart — store orders (4-layer: store → category → item → brand)
Source: docs/examples/47_sankey.php
SVG (vector) 158.0 KB
PNG (plutovg → libpng) 135.0 KB
JPG q88 (plutovg → libjpeg-turbo) 123.3 KB
WebP (plutovg → libwebp) 60.3 KB
25. MarimekkoChart — revenue mix by region & product
Source: docs/examples/48_marimekko.php
SVG (vector) 62.5 KB
PNG (plutovg → libpng) 51.5 KB
JPG q88 (plutovg → libjpeg-turbo) 61.0 KB
WebP (plutovg → libwebp) 23.3 KB
26. VectorChart — rotational vector field
Source: docs/examples/49_vector.php
SVG (vector) 39.3 KB
PNG (plutovg → libpng) 188.3 KB
JPG q88 (plutovg → libjpeg-turbo) 131.2 KB
WebP (plutovg → libwebp) 83.4 KB
27a. Code128 — alphanumeric, human-readable text
Source: docs/examples/41_code128.php
SVG (vector) 7.6 KB
PNG (plutovg → libpng) 8.9 KB
JPG q88 (plutovg → libjpeg-turbo) 19.5 KB
WebP (plutovg → libwebp) 5.0 KB
27b. Code128 — pure digits (encoded entirely in subset C)
Source: docs/examples/41_code128.php
SVG (vector) 8.8 KB
PNG (plutovg → libpng) 7.9 KB
JPG q88 (plutovg → libjpeg-turbo) 17.3 KB
WebP (plutovg → libwebp) 4.8 KB
27c. Code128 — compact bars only, no human-readable text
Source: docs/examples/41_code128.php
SVG (vector) 3.3 KB
PNG (plutovg → libpng) 2.2 KB
JPG q88 (plutovg → libjpeg-turbo) 11.9 KB
WebP (plutovg → libwebp) 2.6 KB
28a. QrCode — ECC level L (~7% recovery, smallest symbol)
Source: docs/examples/42_qrcode.php
SVG (vector) 13.6 KB
PNG (plutovg → libpng) 8.7 KB
JPG q88 (plutovg → libjpeg-turbo) 39.4 KB
WebP (plutovg → libwebp) 11.5 KB
28b. QrCode — ECC level M (~15% recovery, default)
Source: docs/examples/42_qrcode.php
SVG (vector) 13.6 KB
PNG (plutovg → libpng) 8.7 KB
JPG q88 (plutovg → libjpeg-turbo) 39.4 KB
WebP (plutovg → libwebp) 11.5 KB
28c. QrCode — ECC level Q (~25% recovery, logo overlays)
Source: docs/examples/42_qrcode.php
SVG (vector) 17.6 KB
PNG (plutovg → libpng) 11.8 KB
JPG q88 (plutovg → libjpeg-turbo) 45.8 KB
WebP (plutovg → libwebp) 13.6 KB
28d. QrCode — ECC level H (~30% recovery, outdoor / damaged)
Source: docs/examples/42_qrcode.php
SVG (vector) 21.6 KB
PNG (plutovg → libpng) 9.6 KB
JPG q88 (plutovg → libjpeg-turbo) 50.2 KB
WebP (plutovg → libwebp) 16.8 KB
29. Funnel — STYLE_CONE (3D-look band edges)
Source: docs/examples/52_funnel_cone.php
SVG (vector) 49.4 KB
PNG (plutovg → libpng) 78.4 KB
JPG q88 (plutovg → libjpeg-turbo) 48.4 KB
WebP (plutovg → libwebp) 30.2 KB
30. AreaChart — setBandMode (confidence envelope)
Source: docs/examples/53_area_band.php
SVG (vector) 59.9 KB
PNG (plutovg → libpng) 58.6 KB
JPG q88 (plutovg → libjpeg-turbo) 53.6 KB
WebP (plutovg → libwebp) 28.9 KB
31. PolarChart — INTERP_SMOOTH + addVectors
Source: docs/examples/54_polar_smooth_vectors.php
SVG (vector) 26.2 KB
PNG (plutovg → libpng) 114.5 KB
JPG q88 (plutovg → libjpeg-turbo) 63.1 KB
WebP (plutovg → libwebp) 38.2 KB
32. BubbleChart — log Y axis
Source: docs/examples/55_bubble_log_axis.php
SVG (vector) 36.1 KB
PNG (plutovg → libpng) 88.6 KB
JPG q88 (plutovg → libjpeg-turbo) 51.1 KB
WebP (plutovg → libwebp) 28.2 KB
33. BarChart — setImageMap (HTML hot-spots)
Source: docs/examples/56_image_map_bar_pie.php
SVG (vector) 25.3 KB
PNG (plutovg → libpng) 27.7 KB
JPG q88 (plutovg → libjpeg-turbo) 36.0 KB
WebP (plutovg → libwebp) 11.2 KB