Skip to main content
Engineering LibreTexts

11.1: Installation and First Visualization

  • Page ID
    43722
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)\(\newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    Mondrian is based on Roassal. Check the Roassal chapter for installation procedures. If you are using a Moose distribution of Pharo1, then you already have Roassal.

    A First Visualization

    You can get a first visualization by entering and executing the following code in a workspace. By executing the following in a workspace, you should see the Collection class hierarchy.

    | view |
    view := ROMondrianViewBuilder new.
    view shape rectangle
        width: [ :cls | cls numberOfVariables * 5 ];
        height: #numberOfMethods;
        linearFillColor: #numberOfLinesOfCode within: Collection withAllSubclasses.
    view interaction action: #browse.
    view nodes: ROShape withAllSubclasses.
    view edgesFrom: #superclass.
    view treeLayout.
    view open
    

    The visualization should be read as follows:

    • each class is graphically represented as a box
    • inheritance is indicated with edges between boxes. A superclass is above its subclasses
    • the width of each class indicates the amount of instance variable
    • the height of a class indicates the amount of methods defined in the class. The taller the class is, the more methods it defines.
    • the class shading indicates the amount of lines of code the class contains. The class colored in black contains the most lines of code. The white class contains the smallest quantity of lines of code.

    We will detail and review all the mechanisms involved in the visualization later on.


    1. http://www.moosetechnology.org/

    This page titled 11.1: Installation and First Visualization is shared under a CC BY-SA 3.0 license and was authored, remixed, and/or curated by Alexandre Bergel, Damien Cassou, Stéphane Ducasse, Jannik Laval (Square Bracket Associates) via source content that was edited to the style and standards of the LibreTexts platform; a detailed edit history is available upon request.