Inline Plotting in iTerm2

September 14th, 2023
cli, tech
I spend most of my working time in the terminal: I run my text editor there, run programs there, etc. I usually have my iTerm2 set up to display many narrow full height terminals. When I'm working with plots, however, I normally do something like:

$ ./some-cmd.py plot.png && open plot.png

Which pops up a Preview window with my plot, and then I close it and go back to my coding. What I'd really like, though, is for this to be directly in my terminal. And this is possible!

The iTerm2 terminal supports an inline images protocol, and itermplot provides a matplotlib backend that speaks this protocol. Which means after updating my .bashrc to have:

export MPLBACKEND="module://itermplot"
export ITERMPLOT="rv"

I can write:

./inline-plot.py:
  #!/usr/bin/env python3
  import matplotlib.pyplot as plt
  fig, ax = plt.subplots()
  ax.plot([0,1], [1,0])
  plt.title("A Graph")
  plt.xlabel("an x-axis")
  plt.ylabel("a y-axis")
  plt.show()

And when I run it as ./inline-plot.py I see:

Of course I would normally have it alongside a lot of other terminals with related work:

When showing complex charts I do notice it slows down that terminal a little, but it doesn't affect the other terminals and it's back to full speed when I clear it.

I've only just started using it, but I'm quite excited about it! It's a very good fit for my workflow.

Comment via: facebook, lesswrong, mastodon, substack

Recent posts on blogs I like:

Interview with Alicorn on how story conflict is optional and characters in utopia should do fewer drugs

Alicorn writes things sometimes

via Thing of Things May 13, 2026

Fiddle Practice

For a while I wasn't learning how to play violin very well because whenever it was time to practice I didn't want to. I didn't really like practicing, because (1) it's boring, (2) I have better things to do, and (3) actually I guess there …

via Anna Wise's Blog Posts May 3, 2026

New Pony

I have a new pony. I got her from the Goodwill. Her name is "Rainbow" and her nickname is "Sparkles". We went the usual way, in the pink stroller. We went downstairs and I played with some of the toys. I found the pony in the toy area. …

via Nora Wise's Blog Posts May 3, 2026

more     (via openring)