Terminal Charts with Victory CLI
29 August 2016
The ability to collect, analyze, triangulate and visualize vast amounts of data in real time is something the human race has never had before.
After pushing out
webpack-dashboard and seeing how much people enjoy terminal based tooling, I thought perhaps I should see what else I can explore in this space. ’s ReactJS based data visualization library seemed like an awesome candidate for a command line render target.
I saw a project, , by Matthew Conlen, that allowed users to generate interactive Victory charts into . This looked awesome, but I was looking for a way to expand the feature set and operate in a broader range of TERMs.
I had also seen some ascii/ansi style visualizations in while building
webpack-dashboard, and they seemed super cool, but porting would be too much of a challenge given the differences in APIs. Of course, ascii/ansi style charts didn’t seem practical for the mainstream use case.
Then I realized something, Victory outputs valid SVG markup. This, coupled with
ReactDOM.renderToString actually makes command line chart generation really easy. I got to work on it, and today I’m happy to announce the initial release of !
Victory CLI is an easy to use command line interface for generating and displaying Victory based data visualizations. It can:
- Render a variety of chart types
- Use built in themes
- Render to PNG
- Render to SVG
- Display PNG renders in iTerm3
- Take a custom JSON data input
- Take a custom component script input to render from
Check it out in action: