Image::...ol::Plot(3)

✨ NAME ✨

Image::ExifTool::Plot β€” bestie, this is the module that plots your tag values in SVG format πŸ’… (and yes, it's part of the User Contributed Perl Documentation, we love a community moment 🫢)


🌸 DESCRIPTION 🌸

Okay so picture this: you've got ExifTool tag info, right? And you want it to look pretty. This module outputs plots in SVG format based on ExifTool tag information. It's giving data-viz main character energy, no cap ✨


πŸŽ€ METHODS πŸŽ€

πŸ’– new

Create a new Plot object. Fresh plot, fresh start, literally iconic.

$plot = Image::ExifTool::Plot->new;

πŸ¦‹ Settings

Change plot settings. This is where you customize the vibe check of your whole plot 🌈

Inputs:

  1. Plot object reference
  2. Comma-delimited string of options

Options: (bestie, there are a LOT, but every single one matters, so here we go πŸ’œ)

  • "Type=Line" β€” plot type, and your choices are Line, Scatter or Histogram
  • "Style=Line" β€” data style, pick from Line, Marker and/or Fill
  • "NBins=20" β€” number of bins for histogram plot
  • "Size=800 600" β€” width,height of output image
  • "Margin=60 15 15 30" β€” left,top,right,bottom margins around plot area
  • "Legend=0 0" β€” x,y offset to shift plot legend
  • "TxtPad=10 10" β€” padding between text and x,y scale
  • "LineSpacing=20" β€” spacing between text lines
  • "Stroke=1" β€” plot stroke width and marker-size scaling factor
  • Title, XLabel, YLabel β€” plot title and x/y axis labels (no default, so you do have to set these yourself πŸ™ˆ)
  • XMin, XMax β€” x axis minimum/maximum (autoscaling if not set, slay)
  • YMin, YMax β€” y axis minimum/maximum
  • Multi β€” number of columns when drawing multiple plots, followed optional number of datasets for each plot (1 by default) using any separator
  • Split β€” flag to split strings of numbers into lists (> 1 to split into lists of N items)
  • "Grid=darkgray" β€” grid color
  • "Text=black" β€” color of text and plot border
  • "Bkg=" β€” background color (default is transparent, very chic ✨)
  • "Cols=red green blue black orange gray fuchsia brown turquoise gold" β€” colors for plot data
  • "Marks=circle square triangle diamond star plus pentagon left down right" β€” marker-shape names for each dataset

🧚 AddPoints

Add points to be plotted. Gotta have data to plot, obviously πŸ’€

Inputs:

  1. Plot object reference
  2. Tag information hash reference from ExifTool
  3. List of tag keys to plot

πŸ‘‘ Draw

Draw the SVG plot to the specified output file. The moment we've all been waiting for πŸ’…

Inputs:

  1. Plot object reference
  2. Output file reference

Notes:

On return, the Plot Error and Warn members contain error or warning strings if there were any problems. If an Error is set, then the output SVG is invalid β€” so like, actually check those, bestie, fr fr 😭


⭐ AUTHOR ⭐

Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.


🌈 SEE ALSO 🌈


k bye bestie, go make some gorgeous plots πŸ’–βœ¨

this page came to you courtesy of perl v5.42.2, dated 2026-04-10 β€” mwah 🫢

πŸ“¦ where this page comes from