One of the major substantial outcomes of the previous DESIR Code Sprint Track-C was the novel generic concept of time dependent graphs of relations and its visual presentation. Examples of such graphs may be co-authorship and citation graphs, genealogy trees, or characters interaction graphs. From the visual perspective both the structure and time characteristics of such graphs play a significant analytical role. Our web-based tool developed throughout DESIR project now holds a functionality of visualizing bibliographical datasets (e.g imported via BibSonomy API or loaded from a file), on top of the generic data model.
Within this Code Sprint we will focus on the extension of our tool both towards new data formats and use cases, as well as new visual forms. The participants will have the opportunity to work on the mapping of different data to the generic model of our graphs and/or on the translation of data formats to intermediate RDF description (subject-predicate-object). Bring-Your-Own-Data model is encouraged. New visual forms will cover the modification of web application user interface to include additional visualizations of metadata or aggregated information.
- General introduction to visualization
- Graphs and graph visualization
- Temporal graphs concept
- Example: temporal graph visualization in DESIR web app
- Example: temporal graph visualization in VisNow
- Code sprint projects overview
- Tech-talk: intermediate data model
- Tech-talk: RDF
- Tech-talk: backend-frontend data communication
- Create your own test data directly in data model (hardcoded)
- Create your own data source (API or file) and map it to data model
- Translate your own data source (API or file) to RDF format
- Done on Code Sprint 2019
- Advance RDF parsing to understand new commands
- Done on Code Sprint 2019 (but it can always be more complex)
- Create data model export to RDF
- Work on automated translation of data model to DataObject (*)
- Done on Code Sprint 2019
- Enhance BibSonomy query
- Done on Code Sprint 2019
For new data sources consider one of our three usage scenarios:
- Bibliographical data
- JSON file exported from BibSonomy
- JSON file exported from BibSonomy smaller subset
- RDF file in v1.0 format
- RDF file in v2.0 format
- Genealogy
- Character interactions (play/movie,etc.)
- DraCor
- DraCor API
- Hamlet network CSV
- Hamlet network GEXF
- Hamlet scene segments JSON
- Example visualization with R
The substantial and technical skills prerequisites depend on the choice of the project and cover one of the following topics:
- Java programming
- Java web programming frameworks (e.g. Spring/SpringBoot)
- General web frontend programming (e.g Angular, JavaScript)
To run all steps of our track and work with codes the following components are required:
- 64-bit Windows, Mac OS or Linux operating system.
- Java JDK 8 64-bit - we suggest downloading from Oracle website here.
- NetBeans IDE v8.2 for Java EE - download here. Note that all provided projects are in NetBeans project format. If you wish to use another Java IDE you need to convert the projects by yourself.
- BibSonomy account and API key will be required for API querying.
- Project sources and presentations from this Git repository. You can pull it directly from NetBeans through Team->Git->Clone and providing URL: https://github.com/DARIAH-ERIC/DESIR-CodeSprint-TrackC-Visualization
- You need your GitHub user to commit to repository. Please use your own branch for your work. We suggest branch named "feature/<your_user>".
- Data model description + RDF examples
- BibSonomy REST API
- Apache Jena
- Apache Jena RDF output
- Track C Googledocs
- Track C Results presentation
- VisNow project
- JLargeArrays project
- JLargeArrays API javadoc
- JSciC project
- JSciC API javadoc
- VisNow page
- D3.js library for 2D web visualization
- Vega and Vega-lite for 2D web visualization
- Comac Navigator as example of simple 2D graph layout
- Gephi - 3D graph visualization tool for desktop
- Gephi video
- Walrus - 3D graph visualization tool for desktop
- WebGL
- three.js
- Bartosz Borucki (b.borucki@icm.edu.pl)
- Tomasz Blazejczyk (t.blazejczyk@icm.edu.pl)