Pages from many sites can find each other when they arrive together in a browser and at that moment connect data to computations and computations to visualizations. Here we explain how that happens.
A federated wiki page is a tree of data annotated with the names of plugins that can make sense of branches.
A plugin that has data to offer will advertise this by adding an appropriate announcement to its region of the dom in the form of a distinguished class name.
Here is a Method Plugin that can compute values and expose results suitable for plotting on a radar chart.
46 Aptitude 35 Behavior 39 Character 25 Demeanor 15 Effort 41 Fairness 48 Graciousness 24 Helpfulness 38 Industry
The plugin renders this as a table and includes the announcement that it a "radar-source".
<div class="item method radar-source" data-id="9f3d37a32f25fbd7"> <table> ... </table> </div>
Now lets find a page that can make use of this data by including within it a plugin for a radar chart. The chart comes with about-pages that includes variously configured visualizations. We'll use the variation that discovers the axes from the data itself.
Click on the flag below to load this page from another site.
An example radar chart were the dimensions are discovered from available data but a single limit is specified for all dimensions. See About Radar Plugin for more options.
When the Radar Plugin loads it looks to its left for a "radar-source". The Method Plugin above will do. A connection is made. Data flows to the right.
The two plugins cooperate in more ways. Hover over the attributes in the Method Plugin above. The Radar Plugin reorients itself with that axis horizontal.
The Radar Plugin makes these axis labels into links to further documentation that may be found anywhere in the neighborhood.
A radar chart is good for comparing things on many dimensions. See How We Find More Data to see how a Radar Plugin handles multiple things.
The Radar Plugin has code that will try several different signaling strategies for communicating with other plugins. This codes up into ten source lines. github