Vis.js Tutorials For Learning Graphs
This section provides guidelines for using the vis.js JavaScript library for displaying and editing learning graphs. We focus on the key features of vis.js to support the following key features of a learning graph:
- Automatic layout of concepts using a force-directed graph layout engine
- Support for displaying legends
- Support for using groups to display taxonomies
- Clustering to hide group complexity
Why vis.js for Learning Graph Networks
Although there are many JavaScript libraries that display graph networks, vis.js has a good combination of default features, sample code and an active developer community that makes it a good fit for learning graph networks.
Overview of Steps
Learning Graph File Setup Steps
- Use generative AI to generate a CSV file of a learning graph.
- Create a clear course description with prerequisites and goals using [Bloom's Taxonomy]
- Enumerate Concepts
- Find Concept dependencies
- Generate a taxonomy of concepts and place in groups section of a graph.json file
- Add a classifier to each Concept
- Validate the learning graph network
- Convert this learning graph to JSON format.
- Use an enricher to add group="1" to all foundational concepts and group="12" to goals
Learning Graph Visualization
- Load graph data from a JSON file and the legend from groups.json
- Log any problems such as missing foundation, goals or orphan nodes and set NODE_COUNT
- Count the number of nodes and estimate the graph X-dimension CANVAS-WIDTH
- Run the enrich_nodes() function which will:
- Add a x=-CANVAS_WIDTH/2 to foundation nodes and set the shape to "box"
- Add a x=CANVAS_WIDTH/2 to goal nodes and set the shape to be "star"
Basic Properties of Nodes and Edges
Lab 1: Default Behavior
Lab 2 - JSON
Learn the JSON format
Lab 3 - Node Properties
Learn the Properties of a Node
Lab 4 - Edge Shapes
Lab 5 - Custom Shapes
Examples
Graph Editor
Learn how to create an interactive graph editor