Methods for Software Visualization of Large Graph Data Structures

Velin Kralev, Radoslava Kraleva


In this paper, three different methods for software visualization of large graph structures, respectively Rectangle, Intersection and Combined are presented. The basic concepts for using software development environments are outlined. Their capabilities for visual designing and event-oriented programming are discussed. A brief analysis of the basic features of the environment used to develop the ClipRect Monitor application is made. The main functions of this software are also presented. All experimental results in this study are generated with this application. According to the methodology, six graphs are prepared to determine the effectiveness of the three methods. The number of vertices and the edges of these graphs are proportional to the size of the drawing area (canvas). The drawing areas are also six and have different sizes, such that each subsequent area has a height and width twice the size of the previous one. Besides, for all areas, the width/height ratio is exactly 16:9. This ratio is widely used in monitors as well as laptops, mobile phones and tablets. The largest drawing area that the ClipRect Monitor application scanned during the experiments is 128 000 x 72 000 pixels. This scan is performed for graph G_6 with 1 415 vertices and 100 000 edges. The visualization area is diagonally positioned relative to the drawing area. For each visualization area, each of the three methods, respectively Rectangle, Intersection and Combined is performed. The Combined method executes the Rectangle method first and then the Intersection method. The results show that the Intersection method was the slowest compared to the other two methods in terms of the number of edges of the graph that are analyzed. When the visualization area is internal to the drawing area, the Rectangle method performs better than the Combined method. The Rectangle method gives the best result in terms of time for analysis and drawing of the edges of the graph. The Combined method combines the characteristics of the other two methods. This method is optimal in terms of the time of analysis of the need to draw the edges of the graph relative to the number of drawn edges.


graph; large graphs; graph structure; software development; software visualization.

Full Text:



R. J. Wilson, Introduction to Graph Theory, 5th ed., Prentice Hall, 2010.

M. Poobalaranjani, and R. Pichailakshmi, "Dominating cocoloring of graphs," International Journal of Innovative Technology and Exploring Engineering, vol. 9(1), pp. 2545-2547, 2019.

B. L. Natarajan, "Computation of chromatic numbers for new class of graphs and its applications," International Journal of Innovative Technology and Exploring Engineering, vol. 8(8), pp. 396-400, 2019.

V. Kralev, "Different applications of the genetic mutation operator for symmetric travelling salesman problem," International Journal on Advanced Science, Engineering and Information Technology, vol. 8(3), pp. 762-770, 2018.

V. Kralev, R. Kraleva, and S. Kumar, "A modified event grouping based algorithm for the university course timetabling problem," International Journal on Advanced Science, Engineering and Information Technology, vol. 9(1), pp. 229-235, 2019.

B. Aleksandrov, A. Andreev, and N. Sinyagina, "Fast location of optimal separated routes in information exchange in computer networks," International Conference Automatics and Informatics, vol. 2, pp. 95-98, 2003.

R. Kraleva, "ChilDiBu - A mobile application for Bulgarian Children with special educational needs," International Journal on Advanced Science, Engineering and Information Technology, vol. 7(6), pp. 2085-2091, 2017.

E, Ville, N. Sinyagina, and P. Borovska, "Deploying Trusted Computing," Information Technologies and Controls, pp. 28-32, 2009.

J. Abawajy, A. V. Kelarev, M. Miller, and J. Ryan, "Distances of Centroid Sets in a Graph-Based Construction for Information Security Applications," Mathematics in Computer Science, vol. 9(2), pp. 127-137, 2015.

A. K. Abdulsahib, and S. S. Kamaruddin, "Graph based text representation for document clustering," Journal of Theoretical and Applied Information Technology, vol. 76(1), pp. 1-13, 2015.

V. Kralev, R. Kraleva, N. Sinyagina, P. Koprinkova-Hristova, and N. Bocheva, "An analysis of a web service based approach for experimental data sharing," International Journal of Online Engineering, vol. 14(9), pp. 19-34, 2018.

V. S. Kralev, and R. S. Kraleva, "Visual analysis of actions performed with big graphs," International Journal of Innovative Technology and Exploring Engineering, vol. 9(1), pp. 2740-2744, 2019.

J. F. Hughes, A. van Dam, M. McGuire, D. F. Sklar, J. D. Foley, S. K. Feiner, and K. Akeley, Computer Graphics: Principles and Practice, Addison-Wesley Professional, 3 ed., 2013.

V.Skala, "O (lg N) line clipping algorithm in E2," Computers and Graphics, vol. 18(4), pp. 517-524, 1994.

V. Skala, "An efficient algorithm for line clipping by convex polygon," Computers and Graphics, vol. 17(4), pp. 417-421, 1993.

V. Skala, "An efficient algorithm for line clipping by convex and non-convex polyhedra in E3," Computer Graphics Forum, vol. 15(1), pp. 61-68, 1996.

V. Skala, "A new approach to line and line segment clipping in homogeneous coordinates," Visual Computer, vol. 21(11), pp. 905-914, 2005.

D. H. Bui, and V. Skala, "Fast algorithms for clipping lines and line segments in E2," Visual Computer, vol. 14(1), pp. 31-37, 1998.

J. Coenen, S. Gross, and N. Pinkwart, "Comparison of feedback strategies for supporting programming learning in integrated development environments (IDEs)," Advances in Intelligent Systems and Computing, vol. 629, pp. 72-83, 2018.

K. Vassallo, L. Garg, V. Prakash, and K. Ramesh, "Contemporary technologies and methods for cross-platform application development," Journal of Computational and Theoretical Nanoscience, vol. 16(9), pp. 3854-3859, 2019.

B. Stroustrup, Programming: Principles and Practice Using C++, Addison-Wesley Professional, 2 ed., 2014.

P. Costanza, C. Herzeel, and W. Verachtert, "Comparing Ease of Programming in C++, Go, and Java for Implementing a Next-Generation Sequencing Tool," Evolutionary Bioinformatics, vol. 15, 2019.

N. I. V’yukova, V. A. Galatenko, and S. V. Samborskii, "Support for Parallel and Concurrent Programming in C++," Programming and Computer Software, vol. 44(1), pp. 35-42, 2018.

V. Dolgopolovas, T. Jevsikova, and V. Dagiene, "From Android games to coding in C – An approach to motivate novice engineering students to learn programming: A case study," Computer Applications in Engineering Education, vol. 26(1), pp. 75-90, 2018.

D. Charousset, R. Hiesgen, and T. C. Schmidt, "Revisiting actor programming in C++," Computer Languages, Systems and Structures, vol. 45, pp. 105-131, 2016.



  • There are currently no refbacks.

Published by INSIGHT - Indonesian Society for Knowledge and Human Development