Liking cljdoc? Tell your friends :D

Plotje

Composable plotting in Clojure


Plotje is a Clojure library for composable plotting, inspired by the Grammar of Graphics.

General info

||| |-|-| |Website | https://scicloj.github.io/plotje/ |Source |(GitHub repo)| |Deps |Clojars Project| |License |MIT| |Status |πŸ› alphaπŸ› |

Usage

Add to your deps.edn:

org.scicloj/plotje {:mvn/version "0.1.0"}

Several core dependencies (kindly, fastmath, clojure2d, membrane, wadogo) are still on alpha or beta channels. Adopters may need to ride those alpha-channel transitives until they cut stable releases.

Plotje is intended to be used with data-visualization tools that support the Kindly convention such as Clay.

Quick example

Line chart with point markers from plain Clojure data:

(-> [{:month "Jan" :sales 120}
     {:month "Feb" :sales 95}
     {:month "Mar" :sales 140}
     {:month "Apr" :sales 175}
     {:month "May" :sales 160}
     {:month "Jun" :sales 210}]
    (pj/lay-line :month :sales)
    pj/lay-point
    (pj/options {:title "Monthly Sales"}))

Scatter plot matrix (SPLOM) β€” all pairwise combinations with color grouping:

(-> (rdatasets/datasets-iris)
    (pj/pose (pj/cross [:sepal-length :sepal-width
                        :petal-length :petal-width]
                       [:sepal-length :sepal-width
                        :petal-length :petal-width])
             {:color :species})
    (pj/options {:title "Iris SPLOM"}))

License

Copyright Β© 2025-2026 Scicloj

Distributed under the MIT License.

Can you improve this documentation?Edit on GitHub

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
←Move to previous article
β†’Move to next article
Ctrl+/Jump to the search field
Γ— close