Real-Time Interactive Visualization of Large Graphs on the Web Tobias Höllerer, John O’Donovan, Brynjar Gretarsson, Alex Bostandjiev, Peterson Trethewey.

Slides:



Advertisements
Similar presentations
Real-time interaction and dynamic probing are powerful, helpful tools for analysts. Lead Investigatior: Tobias Höllerer Our approach: Make interaction.
Advertisements

UBIQUITY V3 An extensible platform for creating dynamic, customized, and geocentric native mobile applications.
Remote Visualisation System (RVS) By: Anil Chandra.
Real-time Collaborative Scientific WebGL Visualization with WebSocket Julien Jomier & Charles Marion Web3D Conference 2012.
AJAX Technologies KAUNAS UNIVERSITY OF TECHNOLOGY MODULE: INFORMATION TECHNOLOGY GROUP: IF - 4/9 GROUP: VENTILIATORIAI
Vrije Universiteit amsterdamPostacademische Cursus Informatie Technologie Basic Technology HTML, HTTP, MIME client / server architecture client-side extensions.
Introduction to Web Application Architectures Web Application Architectures 18 th March 2005 Bogdan L. Vrusias
WHAT IS AJAX? Zack Sheppard [zts2101] WHIM April 19, 2011.
Chapter 2: Technology Infrastructure: The Internet and the World Wide Web.
Electrical and Computer Engineering PeopleFinder Vitaly Gordievsky Alex Trefonas Scott Richard Matt Beckford Comprehensive Design Review.
SVG oriented Framework for Web Map Services 1 PHPMyWMS Prof. Dr.-Ing. Franz-Josef Behr PHPMyWMS - an Open Source based, SVG oriented Framework for extended.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
Lecture 2: Technical Basics
Development of mobile applications using PhoneGap and HTML 5
A closer look Dynamic Webpages Jessica Meyerson March 1, 2011.
WebGIS. Web & GIS ….WebGIS Access without purchasing proprietary software Data directly from producer Emerging new market.
Internet GIS. A vast network connecting computers throughout the world Computers on the Internet are physically connected Computers on the Internet use.
Web Design Basic Concepts.
Web-based Software Development - An introduction.
Department of Computer Science, University of California, Irvine Site Visit for UC Irvine KD-D Project, April 21 st 2004 The Java Universal Network/Graph.
Client/Server Architectures
Internet sources WEB-BASED GENOME BROWSER USING AJAX AND CANVAS TECHNOLOGIES T.F.Valeev 1,2, N.Tolstykh 1, F.A.Kolpakov 1,3 1 Institute of System Biology,
ITP 104.  How the web as a medium is perceived and used, and how that evolution of the web has affected and changed us  What do you do on the Web? 
CSCI 6962: Server-side Design and Programming Course Introduction and Overview.
Web Applications Harry R. Erwin, PhD University of Sunderland CIT304/CSE301.
Web 2.0: Concepts and Applications 11 The Web Becomes 2.0.
Introduction to Information Retrieval CS 5604: Information Storage and Retrieval ProjCINETViz by Maksudul Alam, S M Arifuzzaman, and Md Hasanuzzaman Bhuiyan.
Ruth Betcher Ruth Christie
Dynamic Web Pages (Flash, JavaScript)
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
GIS technologies and Web Mapping Services
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
14th IEEE-NPSS Real Time Conference 2005, 8 June Stockholm.
Ajax Technology for the Web Nic Shulver, FCET, Staffordshire University Introduction What is it? Pros and Cons Why is it important? Traditional Client-Server.
Test Of Distributed Data Quality Monitoring Of CMS Tracker Dataset H->ZZ->2e2mu with PileUp - 10,000 events ( ~ 50,000 hits for events) The monitoring.
Programming the Web Web = Computer Network + Hypertext.
Introduction to Internet Programming (Web Based Application)
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
Mobile Topic Maps for e-Learning John McDonald & Darina Dicheva Intelligent Information Systems Group Computer Science Department Winston-Salem State University,
An Introduction To Building An Open Standard Web Map Application Joe Daigneau Pennsylvania State University.
Instructor, Dr. Khalili Bahram Jeevan Kumar Gogineni.
Chapter 34 Java Technology for Active Web Documents methods used to provide continuous Web updates to browser – Server push – Active documents.
Understanding AJAX Hype, Hope, Hurt and Help for the Web MJTS May 4th, 2006 _________________________ Terence Conklin, Conklin Systems
Asynchronous Interactive Design of Web Applications: Real-time SIP Message Monitoring System using AJAX Student: Yan-Hsiang Wang Advisor: Dr. Quincy Wu.
Web Pages with Features. Features on Web Pages Interactive Pages –Shows current date, get server’s IP, interactive quizzes Processing Forms –Serach a.
1 Welcome to CSC 301 Web Programming Charles Frank.
Web Controlled of Robot Georgi Chakarov Ivelin Stoyanov.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Building Rich Web Applications with Ajax Linda Dailey Paulson IEEE – Computer, October 05 (Vol.38, No.10) Presented by Jingming Zhang.
Web Design (1) Terminology. Coding ‘languages’ (1) HTML - Hypertext Markup Language - describes the content of a web page CSS - Cascading Style Sheets.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
GVis: Grid-enabled Interactive Visualization State Key Laboratory. of CAD&CG Zhejiang University, Hangzhou
HTML5 AND THE FUTURE JAVASCRIPT PLATFORM Marcelo Lopez Ruiz Senior Software Design Engineer Microsoft Corporation.
Web Pages with Features. Features on Web Pages Interactive Pages –Shows current date, get server’s IP, interactive quizzes Processing Forms –Serach a.
PERFORMANCE ENHANCEMENT IN ASP.NET By Hassan Tariq Session #1.
REAL WORLD AJAX MARCH TIBCO USER CONFERENCE / 2004 Enterprise Rich Internet Applications with AJAX Real World Case Studies with TIBCO General Interface™
Ajax for Dynamic Web Development Gregory McChesney.
Rich Web Applications for the Enterprise... Creating RWA from Your Oracle Database Presented By: John Krahulec Bizwhazee SEOUC Charlotte February 2009.
Web Technologies Lecture 8 Server side web. Client Side vs. Server Side Web Client-side code executes on the end-user's computer, usually within a web.
Web Design and Development. World Wide Web  World Wide Web (WWW or W3), collection of globally distributed text and multimedia documents and files 
 Web pages originally static  Page is delivered exactly as stored on server  Same information displayed for all users, from all contexts  Dynamic.
Alex Chee Daniel LaBare Mike Oster John Spann Bryan Unbangluang Collaborative Document Sharing In Conjunction With.
Web 2.0: Concepts and Applications 11 The Web Becomes 2.0.
JavaScript and Ajax (Internet Background) Week 1 Web site:
PHP and AJAX. Servers and Clients For many years we tried to move as much as possible to the server. Weak clients, poor bandwidth, browser compatibility..
Ajax! Ajax Programming Ajax! Ajax Programming. Ajax! Ajax Programming Take a look at a typical desktop application (Spreadsheet app, etc.) The program.
INTRODUCING HYBRID APP KAU with MICT PARK IT COMPANIES Supported by KOICA
Technologies For Creating Rich Internet Applications Presenter's name
Application with Cross-Platform GUI
Running C# in the browser
Presentation transcript:

Real-Time Interactive Visualization of Large Graphs on the Web Tobias Höllerer, John O’Donovan, Brynjar Gretarsson, Alex Bostandjiev, Peterson Trethewey Four Eyes Laboratory Imaging, Interaction, Innovative Interfaces University of California, Santa Barbara

2 Motivation Dynamic Graph Visualization Insights: Real-time Interaction and dynamic probing very powerful Very helpful tool for analysts Our approach: – Make interaction feasible for large-scale data – Use interaction to predictably explore the data set – Make these technologies available to every web user

3 Previous Achievements Dynamic Graph Visualization Methods “Subdivision Graphs”: Hierarch. Mass-Spring Model: – About 7K nodes interactively on a laptop

4 Previous Achievements Dynamic Graph Visualization Methods “Subdivision Graphs”: Hierarch. Mass-Spring Model: – About 7K nodes interactively on a laptop Mesh Deformation: Transferring Fast CG Methods – A Multigrid Solver for Graph Laplacians: About 50K nodes interactively

5 Previous Achievements Dynamic Graph Visualization Methods “Subdivision Graphs”: Hierarch. Mass-Spring Model: – About 7K nodes interactively on a laptop Mesh Deformation: Transferring Fast CG Methods – A Multigrid Solver for Graph Laplacians: About 50K nodes interactively A New Graph Interpolation Scheme: – About 500K nodes interactively (All these have been demonstrated as thick clients)

Problem definition Visualize large graphs  Hundreds of thousands of nodes and edges On the web  Regardless of host resources  No applets, no plugins, native in the browser  Cross browser, cross platform Real-time  30 fps refresh rate  Interaction

Web Graphics Scalable Web User Interfaces  Large (potentially distributed) data sources  Distributed teams Examples  Google Maps (Google Earth)  Social Networking (Facebook: now 100M+ users)  KDD Blackbook

Rich Client vs. Thin Client Can use different resources simultaneously: Client – user's computer Potentially slow processing (i.e. Javascript)  Javascript is getting faster (e.g. Ajax in Google Chrome) CPU intensive Server – powerful backend computer Fast processing (Virtualization, Storage) Need to send results to client -> bandwidth, JSF Where to do what?

Client-side Visualization Applets, Rich Internet Application frameworks  Live in browser (virtual machine)  Require plugins, can have significant start-up time  Not fully cross browser/platform  Security, Privacy  Hesitant adoption as a hindrance (browser extensions to prevent Flash/AIR/Silverlight/... )

Client-side Visualization Javascript + HTML tags  Javascript real-time interaction  Every node/edge is an image Node Edge  Relatively fast  Visually unappealing edges Demo

Client-side Visualization Other Tried Approaches Javascript with a tag for each pixel Slow Edge rendering is the bottleneck of graph vis Use dotted edges to obtain faster performance Still fairly slow

Client-side Visualization SVG (Scalable Vector Graphics)  Graphics standard on the Web Currently still need plugin for IE VML is the IE equivalent of SVG  Store image in XML  Visually appealing (Vector graphics)  Fastest (client-side)

Server-side Visualization Inherent limitation of client-side methods: not fast enough for smooth interaction for more than a few hundred nodes/edges over a large diverse set of client architectures. Server-side (Prime App example: Google Maps) Method  Generate image on server (i.e. in Java)  Transfer image (compressed format) to client (using AJAX) and display it  Send client-side Javascript interactions to server, re-render, and send back the image Drawbacks  Need fast client-server connection  Bandwidth demanding  Time to transfer image precludes some real-time interactive manipulations

Our Visualization Approach Switch seamlessly between two modes: Client-side Visualize small graphs (or a small part of a big graph) Render graph on the client (using SVG) Javascript interactions on client Server-side Visualize big graphs Generate image on server Transfer image to client and display it Send client-side interactions to server to re-render the image

Server-side and Client-side Rendering Our Visualization Approach

LiveDemos Live Demos

Remote Graph Server Asynchronous Requests (e.g. Mouse interaction Data) Response Image Data And Coordinate Data (JSON) Remote Graph Server Server Graph Model Client-side Web Browser Client Graph Model

Conclusions, Future Work We demonstrated the beginnings of a truly scalable general web visualization toolkit Future features:  Smart labels with overlap avoidance  Curved edges  Group selection and operations  Multiple edge types, node semantics  More advanced clustering ... Next big topic: Analysis and Collaboration Tools

19 Acknowledgments Collaborators, Students, Sponsors Co-PI Matthew Turk, Post-Doc John O’Donovan PhD Students: Brynjar Gretarsson (PhD cand. in CS) Alex Bostandjiev (PhD student in CS) Panuakdet Suwannatat (PhD student in CS) Peterson Trethewey (PhD Math, MS in CS) Special thanks to KDD Program Monitors: Scott Streit, Danko Nebesh Buster Fields and the whole KDD Blackbook Team Funding: IARPA KDD (2008) through NSF grant #IIS