Tile-Based Methods for Online Choropleth Mapping: a Scalability Evaluation by Myung-Hwa Hwang
Total Page:16
File Type:pdf, Size:1020Kb
Tile-based Methods for Online Choropleth Mapping: A Scalability Evaluation by Myung-Hwa Hwang A Dissertation Presented in Partial Fulfillment of the Requirements for the Degree Doctor of Philosophy Approved September 2013 by the Graduate Supervisory Committee: Luc Anselin, Chair Sergio J. Rey Elizabeth A. Wentz ARIZONA STATE UNIVERSITY December 2013 ABSTRACT Choropleth maps are a common form of online cartographic visualization. They reveal patterns in spatial distributions of a variable by associating colors with data values measured at areal units. Although this capability of pattern revelation has popularized the use of choropleth maps, existing methods for their online delivery are limited in supporting dynamic map generation from large areal data. This limitation has become increasingly problematic in online choropleth mapping as access to small area statistics, such as high- resolution census data and real-time aggregates of geospatial data streams, has never been easier due to advances in geospatial web technologies. The current literature shows that the challenge of large areal data can be mitigated through tiled maps where pre-processed map data are hierarchically partitioned into tiny rectangular images or map chunks for ef- ficient data transmission. Various approaches have emerged lately to enable this tile-based choropleth mapping, yet little empirical evidence exists on their ability to handle spatial data with large numbers of areal units, thus complicating technical decision making in the development of online choropleth mapping applications. To fill this knowledge gap, this dissertation study conducts a scalability evaluation of three tile-based methods discussed in the literature: raster, scalable vector graphics (SVG), and HTML5 Canvas. For the eval- uation, the study develops two test applications, generates map tiles from five different boundaries of the United States, and measures the response times of the applications under multiple test operations. While specific to the experimental setups of the study, the evalua- tion results show that the raster method scales better across various types of user interaction than the other methods. Empirical evidence also points to the superior scalability of Canvas to SVG in dynamic rendering of vector tiles, but not necessarily for partial updates of the tiles. These findings indicate that the raster method is better suited for dynamic choropleth rendering from large areal data, while Canvas would be more suitable than SVG when such rendering frequently involves complete updates of vector shapes. i ACKNOWLEDGEMENTS This dissertation would have been impossible without the support of many peo- ple. First of all, I would like to thank my advisor, Luc Anselin. He has taught research fundamentals, has encouraged me to explore new fields, and has helped me find and stay on the right path. Without the incessant opportunities he has given, I would not be able to reach this far along my doctoral study. The members of my committee, Sergio J. Rey and Elizabeth A. Wentz provided valuable information and comments that helped improve the design and quality of this research. Dr. Rey, together with Dr. Anselin, allowed me to develop my professional expertise in spatial analysis and programming. Thanks to Dr. Wentz, I could enhance my perspectives to the process of scientific research and publica- tions. Ming-Hsiang Tsou at San Diego State University and Shaowen Wang at University of Illinos at Urbana-Champaign (UIUC) have also shared great insights into the fields of Internet and Cyber GIS. I also would like to thank the Graduate College and the Graduate and Professional Student Association at Arizona State University (ASU) for the fund and grant provided by a Dissertation Completion Fellowship and Graduate Research Support Program. These financial supports were essential for writing this dissertation and completing some parts of my study. Julia Koschinsky, David C. Folch, Charles R. Schmidt, and Yan Liu deserve my special thanks. Julia has helped me in many different ways along these years. She was an insightful co-worker, a knowledgeable tutor, and sometimes my sister and mom in the United States (US). David has shared many of my joys and concerns that arose from my research and life in Arizona. Charles, a born programmer, has always been my first resort for troubleshooting multiple technical and programming problems. Yan Liu has provided a lot of guidance in seeing through the dark and bright sides of my life and research. ii My sincere appreciation is in order to other graduate students and scholars I met at UIUC and ASU. Jong-Gun, Na-Young, Won-Kyung, and Min-Jo, you washed away my loneliness when I was homesick and in depression. Melinda and Stephanie, thank you for sharing the burden of my doctoral dissertation. Jae-Won, I appreciate your patience of hearing me out when I talked about nonsense out of despair. All hard workers at GeoDa Center of ASU and CyberInfrastructure and Geospatial Information Laboratory (CIGI) of UIUC, your passion have been very contagious. And I could learn how to pursue new things, ideas, and perspectives through diverse forms of collaboration with you guys. Finally, I want to express my heartfelt gratitude to my family and friends in and from Korea. To my father, when I wanted to give up things you were always beside me. I could hear your conforting and encouraging voice. To my mother, you raised me to pursue dreams. I lived one and will continue to do so. To my sisters and brothers, without my belief in you, I neither could live away from you and mom nor cloud go through my life in US. To Enki, thanks for reaching out to me in difficult times. From you, I’ve learned how to live and think of our life. To Jung-Phil and Hae-Young, even an one-minute chat with you cheered me up completely. Your care and affection have been and will be indispensable to continuing my life journey. iii TABLE OF CONTENTS Page TABLE OF CONTENTS . iv LIST OF TABLES . vii LIST OF FIGURES . viii LIST OF ACRONYMS and ABBREVIATIONS . ix CHAPTER . 1 1 INTRODUCTION . 1 1.1 Online Choropleth Mapping and the Challenge of Large Areal Data . 1 1.2 Tile-based Choropleth Mapping and the Need for Scalability Evaluation . 3 1.3 Research Overview and Significance . 5 2 LITERATURE REVIEW . 7 2.1 Choropleth Mapping . 7 2.1.1 Data Classification . 8 2.1.2 Color and Legend Design . 11 2.2 Online Mapping . 14 2.2.1 Architectural Concerns: Server-side and Client-side Mapping . 14 2.2.2 Map Data Models: Raster and Vector Mapping . 17 2.2.3 GIServices and Web 2.0 . 21 2.2.3.1 GIServices . 21 2.2.3.2 Web 2.0 and User-centered Geospatial Technologies . 25 2.2.4 Tile Mapping . 30 2.2.5 Summary . 36 2.3 Online Choropleth Mapping . 36 2.3.1 Traditional Approaches . 37 2.3.2 Tile-based Approaches . 39 2.4 Summary . 43 iv Chapter Page 3 METHOD . 45 3.1 Test Applications . 45 3.2 Test Data . 50 3.3 Tile Generation . 51 3.3.1 Data Pre-processing . 51 3.3.2 Common Configurations for Map Tiling . 51 3.3.3 Raster Tiling . 52 3.3.4 Vector Tiling . 52 3.3.5 Comparability of Raster and Vector Tiles . 56 3.4 Evaluation Framework . 56 3.4.1 Test Operations . 56 3.4.2 Metric . 61 3.4.3 Test Environment . 64 4 RESULTS . 65 4.1 Dynamic Choropleth Mapping . 65 4.2 Map Juxtaposition . 68 4.3 Dynamic Data Query . 70 4.4 Zoom in . 71 4.5 Pan . 73 4.6 Summary . 74 5 DISCUSSION . 76 6 CONCLUSION . 82 REFERENCES . 86 APPENDICES . 98 A SOURCE CODE FOR TEST APPLICATIONS . 98 A.1 Common Components . 99 v Chapter Page A.1.1 Base web page . 99 A.1.2 Map Classifier . 100 A.2 Components for raster-based test application . 103 A.2.1 Test tool . 103 A.2.2 Map component . 114 A.2.3 Event handling . 123 A.3 Components for vector-based test application . 124 A.3.1 Test tool . 124 A.3.2 Map component . 134 A.3.3 Event handling component . 142 B DETERMINATION OF SIMPLIFICATION TOLERANCE . 144 vi LIST OF TABLES Table Page 3.1 The number and data size of raster tiles . 52 3.2 The number and data size of vector tiles . 55 4.1 Average response times during dynamic choropleth mapping . 65 4.2 Details of time spent on dynamic choropleth mapping . 67 4.3 Average response times during map juxtaposition . 69 4.4 Average response times during dynamic data query . 71 4.5 Details of time spent on dynamic data query . 72 4.6 Average response times during zoom-in operation . 73 4.7 Average response times during pan operation . 75 vii LIST OF FIGURES Figure Page 2.1 Illustration of raster and vector tiling . 33 2.2 Different approaches to tile-based choropleth mapping . 41 3.1 Snapshots of test applications . 47 3.2 Architectures of test applications . 49 3.3 The process of vector tile generation . 54 3.4 Workflows for dynamic choropleth mapping in test applications . 57 3.5 Workflows for dynamic data query in test applications . 59 4.1 Response time chart of test applications (dynamic choropleth mapping) . 66 4.2 Response time chart of test applications (map juxtaposition) . 70 4.3 Response time chart of test applications (dynamic data query) . 72 4.4 Response time chart of test applications (zoom in) . 74 4.5 Response time chart of test applications (pan) . 75 viii LIST OF ACRONYMS and ABBREVIATIONS AJAX Asynchronous Javascript And XML API Application Programming Interface DynTM Dynamic Tile Mapper ESDA Exploratory Spatial Data Analysis ESRI Environmental Systems Research Institute FHL Frequency Histogram Legend GeoJSON Geographic JavaScript Object Notation GeoRSS Geographic Really Simple Syndication GIF Graphics Interchange Format GIS Geographic Information Systems GIScience Geographic Information Science GIServices Geographic Information Services GML Geography Markup Language GPS Global Positioning Systems HTML HyperText Markup Language JPEG Joint Photographic Experts Group KML Keyhole Markup Language LOD Level Of Detail NASA National Aeronautics and Space Administration OGC Open Geospatial Consortium PARC Palo Alto Research Center PCSA Primary Care Service Area PNG Portable Network Graphic PySAL Python Spatial Analysis Library REST REpresentational State Transfer RSS Really Simple Syndication ix SE Symbology Encoding SLD Styled Layer Description SOAP Simple Object Access Protocol SVG Scalable Vector Graphics TIFF Tagged Image File Format U.S.