Files
awesome-awesomeness/terminal/dataviz
2024-04-19 23:37:46 +02:00

30 KiB

Awesome Dataviz
!Awesome (https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg) (https://github.com/sindresorhus/awesome) !Test
(https://github.com/javierluraschi/awesome-dataviz/actions/workflows/main.yaml/badge.svg)
 
 
A curated list of awesome open-source data visualizations frameworks, libraries and software. Inspired by awesome-python (https://github.com/vinta/awesome-python) and originally created by fasouto (https://github.com/fasouto).
 
 
Contents
- Awesome dataviz (#awesome-dataviz)
- **JavaScript tools** (#javascript-tools)
- **Charting libraries** (#charting-libraries)
- **Charting libraries for graphs** (#charting-libraries-for-graphs)
- **Maps** (#maps)
- **d3** (#d3)
- **React** (#react)
- **Misc** (#misc)
- **Android tools** (#android-tools)
- **C++ tools** (#c-tools)
- **Golang tools** (#golang-tools)
- **iOS tools** (#ios-tools)
- **Python tools** (#python-tools)
- **R tools** (#r-tools)
- **Ruby tools** (#ruby-tools)
- **Markup-based tools** (#markup-based-tools)
- **Other tools** (#other-tools)
- Resources (#resources)
- **Books** (#books)
- **Catalogs** (#catalogs)
- **Podcasts** (#podcasts)
- **Twitter accounts** (#twitter-accounts)
- Websites (#websites)
- Contributing (#contributing)
- License (#license)
 
JavaScript tools
 
Charting libraries
- ApexCharts (https://apexcharts.com/) - Modern & Interactive SVG Charts.
- Chart.js (https://www.chartjs.org/) - Charts with the canvas tag.
- Chartist.js (https://gionkunz.github.io/chartist-js/) - Responsive charts with great browser compatibility.
- dc.js (https://github.com/dc-js/dc.js) is an multi-Dimensional charting built to work natively with crossfilter.
- Dygraphs (https://dygraphs.com/) - Interactive line charts library that works with huge datasets.
- Echarts (https://github.com/ecomfe/echarts) - Highly customizable and interactive charts ready for big datasets.
- Epoch (https://github.com/epochjs/epoch) - Perfect to create real-time charts.
- Google Charts (https://developers.google.com/chart) - Interactive charts for browsers and mobile devices.
- G2 (https://g2plot.antv.vision/en) - an interactive and responsive charting library based on the grammar of graphics, maintained by Alibaba
- GraphicsJS (http://www.graphicsjs.org) - Lightweight JS graphics library with intuitive API, based on SVG/VML.
- lit-line (https://github.com/apinet/lit-line) - SVG Line Chart Web Component - light, fast, interactive & fully responsive.
- MetricsGraphics.js (https://metricsgraphicsjs.org/) - Optimized for time-series data.
- NVD3 (https://github.com/novus/nvd3) - A reusable charting library written in d3.js.
- Plotly.js (https://github.com/plotly/plotly.js/) - Powerful declarative library with support for 20 chart types.
- React wrapper (https://github.com/hustcc/echarts-for-react)
- TechanJS (https://techanjs.org/) - Stock and financial charts.
- TOAST UI Chart (https://github.com/nhnent/tui.chart) - Complete library with support for legacy browsers.
- Vizzu (https://github.com/vizzuhq/vizzu-lib) - Library for animated data visualizations and data stories.
 
Charting libraries for graphs
- Cola.js (https://marvl.infotech.monash.edu/webcola/) - A tool to create diagrams using constraint-based optimization techniques. Works with d3 and svg.js.
- Cytoscape.js (https://js.cytoscape.org/) - JavaScript library for graph drawing maintained by Cytoscape (https://www.cytoscape.org) core developers.
- Sigma.js (https://sigmajs.org/) - JavaScript library dedicated to graph drawing.
- VivaGraph (https://github.com/anvaka/VivaGraphJS) - Graph drawing library for JavaScript.
- G6 (https://github.com/antvis/g6) - Graph visualization library powered by Javascript & Typescript, maintained by Alibaba
- diagram.js (https://github.com/bpmn-io/diagram-js) - Javascript diagram library serving as the basis for camunda's online BPMN modeler.
- Uber React Digraph (https://github.com/uber/react-digraph) - React.js based directed graph library maintained by UBER.
 
Maps
- CARTO (https://github.com/CartoDB/cartodb) - CARTO is an open source tool that allows for the storage and visualization of geospatial data on the web.
- Cesium (https://github.com/AnalyticalGraphicsInc/cesium) - WebGL 3D globes and maps.
- Deck.gl (https://deck.gl/) - WebGL framework for visual exploratory data analysis of large datasets.
- L7 (https://github.com/antvis/L7) - Large-scale WebGL-powered Geospatial Data Visualization analysis framework, maintained by Alibaba
- L7 Plot (https://github.com/antvis/L7Plot) - Geospatial Visualization Chart Library, maintained by Alibaba
- DataMaps (https://github.com/markmarkoh/datamaps) - Interactive SVG maps using D3.js.
- Dipper (https://github.com/antvis/dipper) - Map application development framework powered by L7, maintained by Alibaba.
- Leaflet (https://leafletjs.com) - JavaScript library for mobile-friendly interactive maps.
- Mapael (https://github.com/neveldo/jQuery-Mapael) - jQuery plugin based on raphael.js to display vector maps.
 
d3
- See Awesome D3 (https://github.com/wbkd/awesome-d3)
 
React
- BizCharts (https://github.com/alibaba/BizCharts) - Data visualization library based on G2 (https://github.com/antvis/G2) and React
- Graphin (https://github.com/antvis/Graphin) - Graph visualization library powered by React & Typescript (built on top of G6, maintained by Alibaba.
- React-vis (https://github.com/uber/react-vis) - React components to build data visualizations.
- Recharts (https://github.com/recharts/recharts) - Declarative react components to render D3 charts.
- Victory (https://formidable.com/open-source/victory/) - Composable components for building interactive data visualizations
- nivo (https://github.com/plouc/nivo) - Supercharged dataviz components for React with isomorphic ability, demo (https://nivo.rocks).
- React Svg Textures (https://github.com/finnfiddle/react-svg-textures) - Textures.js ported to React. Fully isomorphic.
- DevExtreme React Chart (https://devexpress.github.io/devextreme-reactive/react/chart/) - High-performance plugin-based React chart for Bootstrap and Material Design.
 
React Native
- F2 (https://github.com/antvis/F2) - An elegant, interactive and flexible charting library for mobile, maintained by Alibaba
 
Misc
- Graphology (https://github.com/graphology/graphology) - A robust & multipurpose Graph object for javascript & TypeScript; Serves as a base library to power other graph visualization libraries.
- Piecon (https://github.com/lipka/piecon) - Pie charts in your favicon.
- Textures.js (https://riccardoscalco.github.io/textures/) - A library to create SVG patterns.
- Timeline.js (https://timeline.knightlab.com/) - Create interactive timelines.
- Vega (https://vega.github.io/vega/) - Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs.
- Vega-Lite (https://vega.github.io/vega-lite/) - is a high-level grammar of interactive graphics. It provides a concise JSON syntax for rapidly generating visualizations to support analysis.
- Vis.js (https://visjs.org/) - A dynamic visualization library including timeline, networks and graphs (2D and 3D).
 
Android tools
- DecoView (https://github.com/bmarrdev/android-DecoView-charting) - Animated circular wheel chart library.
- MPAndroidChart (https://github.com/PhilJay/MPAndroidChart) - A powerful & easy to use chart library.
- WilliamChart (https://github.com/diogobernardino/WilliamChart) - Simple chart library.
 
C++ tools
- LargeVis (https://github.com/lferry007/LargeVis) - implementation of the LargeVis paper (https://arxiv.org/abs/1602.00370), used to visualize large-scale and high-dimensional data.
- PlotJuggler (https://github.com/facontidavide/PlotJuggler) - open-source Qt5 application to plot charts (based on Qwt).
- Visualization Toolkit (VTK) (https://gitlab.kitware.com/vtk/vtk/blob/master/README.md) - open-source library for 3d Graphics, image processing and visualization.
 
Golang tools
- svgo (https://github.com/ajstarks/svgo) - Go Language Library for SVG generation.
- plot (https://github.com/gonum/plot) - API for building and drawing plots in Go.
- go-echars (https://github.com/chenjiandongx/go-echarts) - Simple yet powerful data visualizing library for Go.
 
iOS tools
- BEMSimpleLineGraph (https://github.com/Boris-Em/BEMSimpleLineGraph) - Highly customizable and interactive line graphs.
- Charts (https://github.com/danielgindi/Charts) - iOS port of MPAndroidChart. You can create charts for both platforms with very similar code.
- JBChartView (https://github.com/Jawbone/JBChartView) - Charting library for both line and bar graphs.
- PNChart (https://github.com/kevinzhow/PNChart) - A simple and beautiful chart lib used in Piner and CoinsMan.
 
Machine Learning tools
- TensorWatch (https://github.com/microsoft/tensorwatch) - Debugging and visualization tool for data science and machine learning
 
Python tools
- altair (https://altair-viz.github.io/) - Declarative statistical visualizations, based on Vega-Lite.
- bokeh (https://bokeh.pydata.org/en/latest/) - Interactive Web Plotting for Python.
- Chartify (https://github.com/spotify/chartify) - Bokeh wrapper that makes it easy for data scientists to create charts.
- diagram (https://github.com/tehmaze/diagram) - Text mode diagrams using UTF-8 characters
- ggplot (https://github.com/yhat/ggpy) - plotting system based on R's (#r-tools) ggplot2.
- glumpy (https://github.com/glumpy/glumpy) - OpenGL scientific visualizations library.
- holoviews (https://holoviews.org/) - Complex and declarative visualizations from annotated data.
- ipychart (https://github.com/nicohlr/ipychart) - The power of Chart.js in Jupyter Notebook.
- mayai (https://docs.enthought.com/mayavi/mayavi/) - interactive scientific data visualization and 3D plotting in Python.
- matplotlib (https://matplotlib.org/) - 2D plotting library.
- missingno (https://github.com/ResidentMario/missingno) - provides flexible toolset of data-visualization utilities that allows quick visual summary of the completeness of your dataset, based on matplotlib.
- plotly (https://plot.ly/python/) - Interactive web based visualization built on top of plotly.js (https://github.com/plotly/plotly.js)
- pptk (https://github.com/heremaps/pptk) - Visualize and work with 2D/3D pointclouds
- PyQtGraph (https://www.pyqtgraph.org/) - Interactive and realtime 2D/3D/Image plotting and science/engineering widgets.
- PyVista (https://github.com/pyvista/pyvista) – 3D plotting and mesh analysis through a streamlined interface for the Visualization Toolkit (VTK)
- seaborn (https://seaborn.pydata.org/) - A library for making attractive and informative statistical graphics.
- toyplot (https://toyplot.readthedocs.io/en/stable/) - The kid-sized plotting toolkit for Python with grownup-sized goals.
- three.py (https://github.com/stemkoski/three.py/) - Easy to use 3D library based on PyOpenGL. Inspired by Three.js.
- veusz (https://veusz.github.io/) - Python multiplatform GUI plotting tool and graphing library
- VisPy (https://vispy.org/) - High-performance scientific visualization based on OpenGL.
- vtk (https://www.vtk.org/) - 3D computer graphics, image processing, and visualization that includes a Python interface.
- pandas-profiling (https://github.com/pandas-profiling/pandas-profiling) - generates statistical analytic reports with visualization for quick data analysis.
- pyechars (https://github.com/pyecharts/pyecharts) - Python binding for Echarts library.
 
R tools
- ggplot2 (https://ggplot2.tidyverse.org/) - A plotting system based on the grammar of graphics.
- ggvis (https://ggvis.rstudio.com/) - A data visualization package with a syntax similar to ggplot2 which allows you to create rich interactive graphics.
- lattice (https://lattice.r-forge.r-project.org) - trellis graphics for R
- plotly (https://github.com/ropensci/plotly) - Interactive charts (including adding interactivity to ggplot2 output), cartograms and simple network diagrams
- rbokeh (https://hafen.github.io/rbokeh/) - R Interface to Bokeh.
- rgl (https://cran.r-project.org/web/packages/rgl/index.html) - 3D Visualization Using OpenGL
- shiny (https://shiny.rstudio.com) - Framework for creating interactive applications/visualisations
- visNetwork (https://datastorm-open.github.io/visNetwork/) - Interactive network visualisations
 
Ruby tools
- Chartkick (https://github.com/ankane/chartkick) - Create charts with one line of Ruby.
 
Markup-based tools
- mermaidjs (https://mermaidjs.github.io/mermaid-live-editor) - A simple markdown-like script language for generating charts from text via javascript
- wavedrom.com (https://wavedrom.com/) - Draws your Timing Diagram or Waveform from simple textual description
 
Other tools
Tools that are not tied to a particular platform or language.
- Charted (https://github.com/mikesall/charted) - A charting tool that produces automatic, shareable charts from any data file.
- Gephi (https://github.com/gephi/gephi) - An open-source platform for visualizing and manipulating large graphs
- Kepler.gl (https://kepler.gl/) - Geospatial analysis tool for large-scale data sets.
- Mermaid (https://github.com/knsv/mermaid) - A tool used to generate diagrams and flowcharts from text in a similar manner as markdown.
- RAW (https://rawgraphs.io) - Create web visualizations from CSV or Excel files.
- Spark (https://github.com/holman/spark) - Sparklines for the shell. It have several implementations in different languages (https://github.com/holman/spark/wiki/Alternative-Implementations).
- Visual-Insights (https://github.com/ObservedObserver/visual-insights) - Automatic insights extraction and visualization specification in data analysis.
- X6 (https://x6.antv.vision/en) - diagram creation library for rapid construction of DAG diagrams, ER diagrams, flowcharts and other applications, maintained by Alibaba
- Graphviz (https://graphviz.org/) - Open source graph visualization command line tool and library. From input text to SVG,PDF,interactive web graph browser.
 
Resources
 
Books
- Design for Information (https://www.amazon.com/Design-Information-Introduction-Histories-Visualizations/dp/1592538061) by Isabel Meirelles.
- The Best American Infographics 2014 (https://www.amazon.com/Best-American-Infographics-2014/dp/0547974515) by Gareth Cook.
- The Grammar of Graphics (https://www.amazon.com/Grammar-Graphics-Statistics-Computing/dp/0387245448/) by Leland Wilkinson. Basic visualization theory.
- The Visual Display of Quantitative Information (https://www.amazon.com/Visual-Display-Quantitative-Information/dp/0961392142) by Edward Tufte.
- The Wall Street Journal Guide to Information Graphics (https://www.amazon.com/Street-Journal-Guide-Information-Graphics/dp/0393347281) by Dona M. Wong
- Visualization Analysis and Design (https://www.amazon.com/Visualization-Analysis-Design-AK-Peters/dp/1466508914) by Tamara Munzner.
- Interactive Data Visualization for the Web (https://chimera.labs.oreilly.com/books/1230000000345) by Scott Murray. Available to read online. Focused on D3.
- Data Visualization Toolkit (https://datavisualizationtoolkit.com) by Barrett Austin Clark. Uses D3, Ruby on Rails, Postgres, PostGIS, & Leaflet.
- Data Visualisation: A Handbook for Data Driven Design (https://www.amazon.com/Data-Visualisation-Handbook-Driven-Design/dp/1526468921/) by Andy Kirk
 
Catalogs
- The Data Visualization Catalogue (https://www.datavizcatalogue.com) - A collection of data visualization methods, with pros and cons.
- Data Viz Project (https://datavizproject.com)
- The R Graph Gallery (https://www.r-graph-gallery.com)
- From data to Viz (https://www.data-to-viz.com)
- Chartopedia (https://www.anychart.com/chartopedia)
- Interactive Chart Chooser (https://depictdatastudio.com/charts/) by Depict Data Studio
- Wikipedia
- Data visualization techniques (https://en.wikipedia.org/wiki/Data_visualization#Techniques)
- List of graphical methods (https://en.wikipedia.org/wiki/List_of_graphical_methods)
- Types of diagrams (https://en.wikipedia.org/wiki/Diagram#Gallery_of_diagram_types)
- Types of plots (https://en.wikipedia.org/wiki/Plot_(graphics)#Types_of_plots)
- Types of charts (https://en.wikipedia.org/wiki/Chart#Types)
 
Podcasts
- Data Stories (https://datastori.es/)
- DataFramed (https://www.datacamp.com/community/podcast)
- Data Viz Today (https://dataviztoday.com/)
 
Twitter accounts
- Alberto Cairo (https://twitter.com/albertocairo)
- Andrei Kashcha (https://twitter.com/anvaka)
- Benjamin Wiederkehr (https://twitter.com/datavis)
- Jan Žák (https://twitter.com/zakjan)
- Mara Averick (https://twitter.com/dataandme)
- Martin Wattenberg (https://twitter.com/wattenberg)
- Mike Bostock (https://twitter.com/mbostock)
- Nadieh Bremer (https://twitter.com/NadiehBremer)
- NYT Graphics (https://twitter.com/nytgraphics)
- Visualizing (https://twitter.com/VisualizingOrg)
 
Websites
- Data For Visualization (https://dataforvisualization.com/) blog - Storytelling with data from the software developer's eye
- Ann K. Emery (https://annkemery.com/)'s blog
- Data Visualization Society (https://www.datavisualizationsociety.com/) - The Data Visualization Society is an organization dedicated to fostering community for data visualization professionals.
- eagereyes (https://eagereyes.org/)
- EvergreenData (https://stephanieevergreen.com/)
- FlowingData (https://flowingdata.com/)
- Information is Beautiful (https://www.informationisbeautiful.net/)
- Junk Charts (https://junkcharts.typepad.com/) - Kaiser Fung takes apart why certain datavizes work/don't work
- Lisa Rost thinks and discusses about why we dataviz (https://lisacharlotterost.github.io/)
- Makeover Monday (https://www.makeovermonday.co.uk/) blog - #MakeoverMonday (https://twitter.com/search?q=%23makeovermonday) on twitter
- The Open News (https://source.opennews.org/articles/) blog - Open news has some good dataviz related articles from time to time
- The Pudding (https://pudding.cool/)
- Truth & Beauty Operations (https://truth-and-beauty.net/)
- University of Washington Interactive Data Lab Papers (https://idl.cs.washington.edu/papers)
- vis4.net (https://www.vis4.net/blog/) - Random thoughts on visualization and data journalism by Gregor Aisch
 
 
Contributing
 
- Please check for duplicates first.
- Keep descriptions short, simple and unbiased.
- Please make an individual commit for each suggestion
- Add a new category if needed.
 
Thanks for your suggestions!
 
 
Contributors
 
- Fabio Souto originally createad this repo, connect with Fabio at fabiosouto.me (https://fabiosouto.me/).
- Javier Luraschi (https://github.com/javierluraschi) is the current maintainer, he builds predictive visualizations at Hal9 (https://hal9.com).
 
 
- - -
 
If you have any question about this opinionated list, do not hesitate to contact me @javierluraschi (https://twitter.com/javierluraschi) on Twitter or open a GitHub issue (https://github.com/javierluraschi/awesome-dataviz/issues/new).