Entities
Entities are the central information units at Diafunc.
Identification
Each entity is identified by a project-wide unique entity id. By default, Diafunc generates a UUID (v4).
An entity id gives direct access to its entity; custom ids make that access simpler.
An entity id gives direct access to its entity; custom ids make that access simpler.
Types
An entity has a custom type or a predefined type.
The predefined types come with additional support in the Function Development Kit (FDK) and in the user interface.
The predefined types come with additional support in the Function Development Kit (FDK) and in the user interface.
Predefined Types
| Entity Type | Description | FDK API |
|---|---|---|
| animation | Animation of a 3D visualization | |
| body | Physical body within a 3D scene | |
| canvas | Canvas for a 2D visualization | |
| chapter | Chapter of a notebook | |
| chart | Graphical representation of data | |
| class | Classification unit | |
| contents | Contents unit (Table of contents / TOC) | |
| directory | Cataloging structure which contains references to other entities | |
| drawing | Drawing on a canvas | |
| field | Set of points within a space (e.g. vector field in 3D space) | |
| file | Binary file | |
| function | Intelligent function to map the project graph | |
| heightMap | Height map for a terrain | |
| image | Two-dimensional image | |
| instance | Instance of a class | |
| layout | Layout unit in a notebook | |
| message | Textual message for a scene | |
| metric | Numerical value | |
| model | Automated analysis model | |
| module | Logical unit | |
| notebook | Interactive computational notebook | |
| object | Independent information unit | |
| point | Point within a field | |
| project | Diafunc project (root entity of the project graph) | |
| scene | Particular 2D or 3D visualization | |
| sky | Sky within a 3D scene | |
| spacer | Spacing unit in a notebook | |
| table | Table of structured data | |
| terrain | Terrain within a 3D scene | |
| text | Textual output in a notebook | |
| texture | Texture for terrains | |
| visualization | Visualization of some entities within a 3D scene |
Linking
Entities can be linked to one another. An entity can have a large number of links, and two entities can have several links in the same direction.
Events
Events can be fired by functions and can also trigger the evaluation of functions. Each event is related to a particular entity.
Content
An entity can have binary content of any kind.
Notebook
An interactive notebook mixes data, logic and visualizations to describe ideas and concepts.
This style of literate programming supports reproducible research and open access in data science.
This style of literate programming supports reproducible research and open access in data science.
Function
Intelligent Functions are user-defined functions that can analyze and modify the project graph.
Table
Tables hold large amounts of structured data.
Model
Models are discovered automatically and describe the relationships and patterns in the data.
Chart
Charts are graphical representations of data.
Scene
A scene is a particular 2D or 3D visualization, viewed in the Diafunc Cockpit.