30 open-source projects similar to makieorg/makie.jl, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Makie.jl alternative.
This C++ data visualization library is a scientific plotting framework used to create 2D and 3D charts, network graphs, and geographic maps. It operates as a multi-backend graphics library, decoupling high-level plotting logic from low-level rendering engines to support various output backends. The project distinguishes itself with a dual-interface API, providing both a global functional interface for rapid prototyping and an object-oriented interface for precise control. It features a component-based layout engine for managing tiled grids and subplots, alongside a layered plot state that all
Plotnine is a data visualization library for Python based on the Grammar of Graphics. It serves as a declarative statistical plotting framework and multi-panel plotting engine, allowing users to create complex charts by mapping data variables to visual properties such as position, color, and size. The project is distinguished by its use of a layered composition model and a statistical transformation engine that performs aggregations and computations before rendering visuals. It features a comprehensive system for multi-panel faceting, which enables the splitting of a single visualization into
Plotly.js is a JavaScript charting library and interactive graphing framework used to create web-based visualizations. It functions as a high-performance data visualization engine that utilizes both SVG for static elements and WebGL for hardware-accelerated rendering of large datasets and complex 3D plots. The library is distinguished by specialized toolkits for financial analysis, such as candlestick and OHLC charts, and geographic mapping tools for rendering choropleth and scatter maps with custom projections. It also supports complex scientific visualizations, including Sankey diagrams, pa
Kepler.gl is a web-based geospatial visualization framework designed for rendering large-scale location datasets. It functions as a modular React mapping component that enables developers to embed interactive, high-performance geographic visualizations into web applications, serving as a comprehensive engine for building browser-based GIS dashboards. The library distinguishes itself through a highly extensible architecture that centers on centralized state management. By utilizing a predictable state-driven model, it allows for the programmatic control of map layers, filters, and viewport set
PyQtGraph is a scientific plotting and graphics framework built for PyQt and PySide applications, providing fast, interactive 2D and 3D visualizations with GPU-accelerated rendering. It serves as both a real-time signal monitoring system for streaming time-series data and a toolkit for constructing interactive data dashboards with dockable panels, parameter trees, and custom widgets. The library also includes a node-based visual flowchart tool for building data processing pipelines and a scientific graphics export system that saves plots as PNG, SVG, or CSV and converts items to Matplotlib for
This is a grammar of graphics visualization library used to build charts by mapping tabular data to visual marks. It functions as an SVG data visualization tool and an exploratory data analysis API, allowing users to render complex visualizations and geographic maps. The library features a GeoJSON map renderer that projects spherical coordinates into two-dimensional pixel space and an Apache Arrow visualization interface for high-efficiency data processing. Its capability surface covers data transformation through binning and grouping, visual encoding via automatic scale inference and color
bqplot is an interactive data visualization library for IPython and Jupyter notebooks that utilizes a grammar of graphics. It functions as a tool for creating 2D charts and maps with real-time updates and bidirectional communication between the kernel and frontend. The library is distinguished by its ability to act as a geographic data visualization tool, rendering choropleth maps and spatial data via GeoJSON and custom projections. It also serves as a financial charting tool for producing OHLC and candle bar charts, and as an interactive dashboard framework for combining plotting widgets wit
PixiJS is a hardware-accelerated 2D rendering engine and HTML5 canvas library. It functions as a web-based graphics engine that utilizes WebGL to draw interactive digital content, shapes, text, and images in the browser. The engine provides a specialized pipeline for high-performance 2D graphics, featuring a scene-graph hierarchy for organizing visual objects and a system for dynamic texture management. It includes capabilities for applying visual effects through masks, filters, and blend modes. The project covers broad functional areas including digital asset loading, user input processing
Leafer UI is a high-performance HTML5 canvas rendering engine and 2D vector graphics library. It utilizes a hierarchical scene tree to manage shapes, paths, and text, providing a toolkit for building interactive canvas applications and expansive infinite canvases. The engine is designed as a cross-platform canvas toolkit that decouples core logic from the drawing API, allowing it to run across web, mobile, server, and mini-program environments. It distinguishes itself by providing specialized tools for interactive graphic editor development, including hit detection, event bubbling, and transf
ggplot2 is a data visualization library for R based on a formal grammar of graphics. It provides a declarative plotting framework that allows users to create complex graphics by combining geometric objects, statistical summaries, and coordinate systems. The system is distinguished by a layered approach to composition, where visualizations are built incrementally by stacking independent geometric, statistical, and coordinate layers. It utilizes a hierarchical styling engine to manage non-data elements such as backgrounds, fonts, and margins, and includes a multi-panel faceting tool for splitti
G2 is a declarative data visualization engine that constructs complex charts and graphical representations by mapping raw data to visual elements through a systematic grammar of graphics. It functions as a modular framework for building custom analytical visualizations, allowing users to define visual encodings and coordinate systems independently of the underlying data. The library distinguishes itself through a multi-backend rendering pipeline that supports Canvas, SVG, and WebGL, ensuring consistent graphical performance across different environments. Its architecture relies on a plugin-ba
Zdog is a JavaScript graphics library designed for rendering pseudo-three-dimensional geometric models within web browser environments. It functions as a lightweight engine that draws flat, vector-based shapes onto HTML5 canvas or SVG elements by utilizing a scene graph to manage object relationships and spatial transformations. The library distinguishes itself through a unique approach to volumetric modeling, where three-dimensional depth is simulated on flat shapes by dynamically adjusting stroke thickness. This technique allows for the creation of rounded, plump visual effects without the
Lottie is a JSON vector animation engine and cross-platform player that renders resolution-independent motion graphics. It functions as a runtime renderer that translates Adobe After Effects compositions into real-time animations using a JSON-based intermediate representation. The project distinguishes itself by enabling dynamic control over vector assets at runtime. It allows for the programmatic modification of animation properties, colors, and playback states through hierarchical key-paths and dynamic theming. This allows animations to respond to real-time application state changes and use
FriendsDontLetFriends is a scientific data visualization guide and framework designed to help users create accurate plots while avoiding common data representation mistakes. It provides a collection of scripts and guidelines for selecting distribution plots, color scales, and layouts that accurately represent complex experimental data. The project distinguishes itself through specialized toolkits for revealing hidden patterns in large datasets. It includes systems for heatmap optimization via dimension reordering and outlier management, as well as spatial layout algorithms to improve the inte
Cesium is a JavaScript geospatial visualization library and 3D globe engine designed to render world-scale environments and precision spatial data. It functions as a web-based mapping tool that displays hardware-accelerated 3D globes and 2D maps directly in a browser without requiring external plugins. The project operates as a 3D tiles renderer, utilizing the 3D Tiles open standard to stream and display large-scale geospatial datasets. It enables the visualization and analysis of high-accuracy spatial information across global environments. The library covers a broad range of capabilities,
ggplot2 is an R data visualization library and statistical graphics engine. It implements a grammar of graphics that functions as a declarative plotting framework, allowing users to specify what a plot should contain rather than how to draw it. The system builds visualizations by mapping data variables to visual aesthetics through a structured set of layering rules. This approach enables the composition of complex graphics by stacking independent components, such as geometric objects and scales, on top of a shared coordinate system. The framework supports scientific plotting and exploratory
jMonkeyEngine is a Java-based 3D game engine and cross-platform graphics framework. It provides the core tools necessary for developing three-dimensional games and interactive simulations, focusing on real-time rendering and the management of spatial environments. The engine includes a dedicated 3D physics simulation toolkit for handling rigid body dynamics and collision detection. It also features a game asset pipeline for importing and managing 3D models, textures, and audio files during runtime. The framework covers broad capability areas including 3D scene rendering, physics-based simula
Two.js is a multi-backend graphics engine and vector drawing library that provides a unified API for creating two-dimensional graphics and animations. It functions as a renderer-agnostic abstraction layer, allowing users to generate vector shapes and paths that can be rendered via SVG, Canvas2D, or WebGL. The engine includes a scene graph manager to organize objects into hierarchical groups, enabling the propagation of collective transformations and parent-child relationships. It also features a headless graphics renderer, providing a node-based implementation for generating 2D drawings in se
This project is a scientific visualization guide and data visualization framework designed for creating high-quality 2D and 3D figures for academic journals and scientific publishing. It provides a structured approach to designing precise layouts, coordinate systems, and typography for complex scientific data. The project features a specialized print-ready PDF workflow and a CMYK print production workflow. These systems translate digital RGB colors into printer-specific CMYK profiles to ensure visual accuracy for physical hardcover and softcover printing. It also serves as a guide for SVG dat
This project is a high-level 3D graphics engine designed to render complex, hardware-accelerated environments within web browsers. It provides a comprehensive abstraction layer that manages scene graphs, cameras, and lighting, mapping high-level scene definitions onto low-level graphics APIs. By decoupling these definitions from specific hardware targets, the engine ensures consistent performance across diverse browsers and devices. The framework distinguishes itself through a robust architecture that includes a unified math library for high-frequency spatial calculations and a physically bas
NanoVG is a hardware-accelerated 2D drawing engine and C graphics primitive library. It provides a lightweight renderer designed for high-quality antialiased vector graphics using an OpenGL backend. The engine specializes in the construction and rendering of complex geometric paths. It supports the definition of precise shapes using lines, beziers, and arcs, with integrated winding rules to create hollow areas and composite shapes. The library covers a broad range of vector graphics capabilities, including path composition and the rendering of antialiased shapes. These tools enable the devel
Skia is a high-performance 2D graphics rendering library used for drawing text, geometries, and images on digital surfaces. It functions as a hardware-accelerated graphics engine that offloads drawing operations to the GPU, a vector graphics processor for SVG and complex paths, and a typography engine for shaping and drawing characters with Unicode support. The project provides a cross-platform image codec for encoding and decoding standard image formats into raw pixel data across multiple operating systems. It also enables the development of user interfaces that maintain visual consistency a
This project is a Java GUI framework used to build cross-platform desktop, mobile, and embedded applications. It centers on a hardware accelerated graphics engine that provides 2D and 3D visualizations and visual effects, complemented by a reactive UI binding system for synchronizing data and interface updates. The framework distinguishes itself through the FXML markup language, which separates the visual structure of an interface from its procedural logic. It also includes a dedicated CSS styling engine that allows for the customization of component appearances using external stylesheets and
Termui is a Go terminal user interface library used for building interactive dashboards and visual layouts within a command-line environment. It functions as a TUI layout engine, an interactive CLI framework, and a terminal data visualization toolkit. The library provides a set of specialized widgets for rendering charts, plots, gauges, and tables using character-based graphics. It includes a grid-based system for arranging interface elements using relative coordinates and proportional sizing to create structured displays. The toolkit covers a broad range of capabilities including data visua
ggpy is a Python library for statistical data visualization based on the grammar of graphics. It functions as a declarative framework for building complex charts by mapping data variables to visual properties through a structured coordinate system. The library enables the construction of composite visualizations by layering geometric shapes and statistical summaries. It utilizes a system of continuous and discrete scales to translate raw data into visual attributes and supports facet-based plotting to segment a single visualization into a grid of subplots based on variable categories. Visual
OpenMoonray is a production-grade physically based rendering system and path-tracing engine. It simulates the physical behavior of light to generate high-fidelity photorealistic images and is compatible with Universal Scene Description files for visualizing complex 3D scenes and production pipelines. The system is designed as a distributed rendering framework, capable of splitting heavy computational workloads across multiple machines or cloud clusters to accelerate image generation. It integrates OpenColorIO for consistent color management across different display devices and color spaces.
Vega-Lite is a high-level declarative language for specifying interactive, multi-view visualizations. It compiles a concise JSON specification into a full Vega visualization, automatically inferring scales, axes, and legends from encoding declarations. The grammar-of-graphics encoding maps data fields to visual channels such as position, color, size, and shape, while a multi-view composition grammar enables layered, faceted, concatenated, and repeated layouts. Reactive parameter binding links named parameters to input widgets, selections, and expressions for dynamic updates. The project suppo
This project is a declarative visualization library and geospatial framework designed for rendering large-scale data sets within web browsers. It functions as a high-performance graphics engine that leverages hardware acceleration to display complex 2D and 3D visual layers, enabling the visualization of millions of data points through a structured, component-based syntax. The framework distinguishes itself through its ability to synchronize custom data visualizations with third-party mapping platforms. By managing camera states and coordinate systems, it allows developers to overlay high-perf
f3d is a fast 3D model viewer and rendering engine designed for visualizing 3D meshes, CAD files, and point clouds. It operates across multiple deployment profiles, functioning as a lightweight desktop application, a scientific data visualizer for volumetric and scalar datasets, a headless rendering engine for automated image generation, and a WebAssembly-based renderer for web applications. The project distinguishes itself through specialized support for Gaussian Splatting scene reconstructions and the ability to visualize complex scientific formats such as VTK, NetCDF, and HDF. It features