1.

Record Nr.

UNINA9910523888103321

Autore

Bergel Alexandre

Titolo

Agile Visualization with Pharo : crafting interactive visual support using roassal / / Alexandre Bergel

Pubbl/distr/stampa

New York, New York : , : Apress Media LLC, , [2022]

©2022

ISBN

1-4842-7161-0

Descrizione fisica

1 online resource (268 pages)

Disciplina

001.4226

Soggetti

Information visualization - Data processing

Agile software development

Lingua di pubblicazione

Inglese

Formato

Materiale a stampa

Livello bibliografico

Monografia

Note generali

Includes index.

Nota di contenuto

Intro -- Table of Contents -- About the Author -- About the Technical Reviewer -- Chapter 1: Introduction -- Agile Visualization -- The Pharo Programming Language -- The Roassal Visualization Engine -- Roassal License -- Contributing to the Development of Roassal -- Accompanying Source Code -- Want to Have a Chat? -- Book Overview -- Who Should Read This Book? -- Acknowledgments -- Chapter 2: Quick Start -- Installation -- First Visualization -- Visualizing the Filesystem -- Charting Data -- Sunburst -- Graph Rendering -- What Have You Learned in This Chapter? -- Chapter 3: Pharo in a Nutshell -- Hello World -- Visualizing Some Numbers -- From Scripts to Object-Oriented Programming -- Pillars of Object-Oriented Programming -- Sending Messages -- Creating Objects -- Creating Classes -- Creating Methods -- Block Closures -- Control Structures -- Collections -- Cascades -- A Bit of Metaprogramming -- What Have You Learned in This Chapter? -- Chapter 4: Agile Visualization -- Visualizing Classes as a Running Example -- Example in the Pharo Environment -- Closing Words -- What Have You Learned in This Chapter? -- Chapter 5: Overview of Roassal -- Architecture of Roassal -- Shapes -- Canvas -- Events -- Interaction -- Normalizer -- Layouts -- Inspector Integration -- Animation -- What Have You Learned in This Chapter? -- Chapter 6: The Roassal Canvas -- Opening, Resizing, and Closing a Canvas -- Camera and Shapes -- Virtual Space



-- Shape Order -- Canvas Controller -- Converting a Canvas to a Shape -- Events -- What Have You Learned in This Chapter? -- Chapter 7: Shapes -- Box -- Circle and Ellipse -- Label -- Polygon -- SVG Path -- Common Features -- Model -- Line -- Line Attach Point -- Line Marker -- Line with Control Points -- What Have You Learned in This Chapter? -- Chapter 8: Line Builder -- Difficulties with Build Lines -- Using a Line Builder.

Using Associations -- Graph Visualization -- What Have You Learned in This Chapter? -- Chapter 9: Shape Composition -- Composite Shapes -- Model Object in Composite -- Labels Part of a Composition -- Labeled Circles -- What Have You Learned in This Chapter? -- Chapter 10: Normalizing and Scaling Values -- Normalizing Shape Size -- The RSNormalizer Class -- Combining Normalization -- Normalizing Shape Position -- Line Width -- Scaling -- What Have You Learned in This Chapter? -- Chapter 11: Interactions -- Useful Interactions -- Using Any Shape in a Popup -- RSLabeled -- RSHighlightable -- What Have You Learned in This Chapter? -- Chapter 12: Layouts -- Circle Layout -- Grid Layout -- Flow Layout -- Rectangle Pack Layout -- Line Layout -- Tree Layout -- Force-Based Layout -- Conditional Layout -- Graphviz Layouts -- Installing Graphviz -- Bridging Roassal and Graphviz -- Graphviz Layout -- What Have You Learned in This Chapter? -- Chapter 13: Integration in the Inspector -- Pharo Inspector -- Visualizing a Collection of Numbers -- Chaining Visualizations -- What Have You Learned in This Chapter? -- Chapter 14: Reinforcement Learning -- Implementation Overview -- Defining the Map -- Modeling State -- The Reinforcement Learning Algorithm -- Running the Algorithm -- What Have You Learned in This Chapter? -- Chapter 15: Generating Visualizations From GitHub -- Requirements -- Creating a Workflow -- Trying the Workflow -- Running Unit Tests -- Running Tests -- Visualizing the UML Class Diagram -- Visualizing the Test Coverage -- What Have You Learned in This Chapter? -- Index.

Sommario/riassunto

Use the Pharo interactive development environment to significantly reduce the cost of creating interactive visualizations. This book shows how Pharo leverages visualization development against traditional frameworks and toolkits. Agile Visualization with Pharo focuses on the Roassal visualization engine and first presents the basic and necessary tools to visualize data, including an introduction to the Pharo programming language. Once you've grasped the basics, you'll learn all about the development environment offered by Roassal. The book provides numerous ready-to-use examples. You'll work on several applications, including visualizing the training phase of reinforcement learning (a powerful machine learning algorithm) and generating software visualizations from GitHub. This book covers aspects that are relevant for engineers and academics to successfully design and implement interactive visualizations. What You Will Learn Implement agile data visualization using the Pharo programming language Chart, plot, and curve using Grapher Build and draw graphs using Mondrian Implement reinforcement learning (Q-Learning, from scratch) and use visualizations to monitor learning and state exploration Use GitHub Action to generate software visualizations (UML class diagram, test coverage) at each commit Who This Book Is For Programmers with some prior exposure to data visualization and computer vision who may be new to the Pharo programming language. This book is also for those with some Pharo experience looking to apply it to data visualization.