131 research outputs found
Using Icicle Trees to Encode the Hierarchical Structure of Source Code
This paper presents a study which evaluates the use of a tree visualisation (icicle tree) to encode the hierarchical structure of source code. The tree visualisation was combined with a source code editor in order to function as a compact overview to facilitate the process of comprehending the global structure of a source code document. Results from our study show that pro- viding an overview visualisation led to an increase in accuracy and a decrease in completion time when participants performed counting tasks. However, in locating tasks, the presence of the visualisation led to a decrease in participants’ performance
On Using Tree Visualisation Techniques to Support Source Code Comprehension
This paper presents a design study that investigates the use of compact tree visualisations to provide software de-velopers with an overview of the static structure of a sourcecode document within a code editor in order to facilitate source code understanding and navigation. A prototype is presented which utilises an icicle tree visualisation to encode the control structure hierarchy of a source code document, as well as a circular treemap visualisation to encode the scope hierarchy of a source code document. An overview of the prototype and its functionality is given as well as a detailed discussion on the design rationale behind the tool. Possible applications and future work plans are also discussed
Hierarkkisessa asiakasdatassa ajan suhteen tapahtuvien muutosten visualisointi käyttäen visualisointikirjastoa Plotly Python Graphing Library
Time-dependent hierarchical data is a complex type of data that is difficult to visualize in a clear manner. It can be found in many real-life situations, for example in customer analysis, but the best practices for visualizing this type of data are not commonly known in business world.
This thesis focuses on visualizing changes over time in hierarchical customer data using the Plotly Python Graphing Library and is written as an assignment for a Finnish company. The thesis consists of a literature survey and experimental part. The literature survey introduces the most common hierarchical visualization methods, and the different possible encoding techniques for adding time dimension on top of these hierarchical visualization methods. Moreover, the pros and cons of different visualization techniques and encodings are discussed about.
In the experimental part of the thesis, visualization prototypes are designed using the Plotly Python Graphing Library. A company customer data set of the commissioning company is partitioned into hierarchical customer segments by a hierarchical industrial classification TOL 2008, and changes over time in a continuous variable are visualized by these segments. Two hierarchical visualization techniques: the sunburst chart and treemap, are used to create two prototype versions, and the combination of color, typography, and interaction is used to encode time dimension in these prototypes. The same prototypes are also exploited to visualize customer segments by an artificial hierarchy created by combining multiple categorical features into a hierarchical structure.
The prototypes are validated in the commissioning company by arranging an end user study and expert review. Concerning the prototypes by the industrial classification: According to the end users and experts, both prototype versions are very useful and well-implemented. Among the end users, there was no significant difference in which one of these prototype versions is faster to use, but the clear majority of the respondents regarded the sunburst chart version as their favorite prototype. The two experts who participated in the expert review had different opinions on which one of the prototype versions they would select to be utilized in practice. Concerning the prototypes by the artificial hierarchy: These prototypes also received positive feedback, but the possibility to change the order of features in the hierarchy was considered as an extremely important development idea.
ACM Computing Classification System (CCS):
Human-Centered Computing → Visualization → Visualization Techniques
Human-Centered Computing → Visualization → Empirical Studies in Visualizatio
Radial Icicle Tree (RIT): Node Separation and Area Constancy
Icicles and sunbursts are two commonly-used visual representations of trees.
While icicle trees can map data values faithfully to rectangles of different
sizes, often some rectangles are too narrow to be noticed easily. When an
icicle tree is transformed into a sunburst tree, the width of each rectangle
becomes the length of an annular sector that is usually longer than the
original width. While sunburst trees alleviate the problem of narrow rectangles
in icicle trees, it no longer maintains the consistency of size encoding. At
different tree depths, nodes of the same data values are displayed in annular
sections of different sizes in a sunburst tree, though they are represented by
rectangles of the same size in an icicle tree. Furthermore, two nodes from
different subtrees could sometimes appear as a single node in both icicle trees
and sunburst trees. In this paper, we propose a new visual representation,
referred to as \emph{radial icicle tree} (RIT), which transforms the
rectangular bounding box of an icicle tree into a circle, circular sector, or
annular sector while introducing gaps between nodes and maintaining area
constancy for nodes of the same size. We applied the new visual design to
several datasets. Both the analytical design process and user-centered
evaluation have confirmed that this new design has improved the design of
icicles and sunburst trees without introducing any relative demerit
Visualising The Complex Features Of Source Code
Software development is a complex undertaking composed of several activities that include reading, writing, and modifying source code. Indeed, previous studies have shown that the majority of the effort invested in software development is dedicated to understanding code. This includes understanding the static structure, dynamic behaviour, and evolution of the code. Given these particular characteristics, as well as the high complexity of source code, it is reasonable to consider how visualisation can facilitate source code understanding. This work proposes to extend existing software development tools with visualisations that can be used to encode the various complex features within a source code document. Further, this work establishes a design space which includes a series of visualisations that are meant to complement existing textual views of source code, as found in source code editors. Several prototype visualisations are presented in this work which utilise various visualisation techniques, such as tree visualisations techniques and visualisation techniques based on the code-map metaphor. This work also presents several experiments, where the results of these experiments indicate that combining existing software development tools with visualisations can have a positive effect on source code understanding. Additionally, the result of the experiments show that the less a visualisation is abstracted from the original textural representation of a source code document, in terms of line, token, ordering, and character information, the more likely it is that viewers can link the visualisation to the code and back
Interactive Visualization for Deep Organizational data
During the last decade, there has been a growing interest in investigating how and why people use organizational data to solve problems, make decisions, and perform other cognitive activities, especially in the social network, healthcare, and education domains. Working with organizational data is challenging because of the complex and multi-structured nature of it. One way to support cognitive activities with organizational data is through the use of interactive visualization tools that provide different representations and mechanisms for interacting with deep layers of the data. In this research, we have deep organizational data which is mainly about collaborations inside universities. The thesis goal is making an interactive visualization tool to support complex cognitive activities with this database. The generated visualization tool has an expandable and reusable structure as well as innovative representations and interactions designed to allow navigating through the data intuitively
- …