AkuaJs

The AkuaJs Analytical Engine

Download .zip View on GitHub

Home  Docs


Why use AkuaJs

  • Create awesome Visualizations based on one unified Data Model
  • Choose from a variety of different charts
  • Build interactive maps to display sales or financial information
  • Ready for mobile app development
  • Easily extend it to incorporate your favorite charting engine
  • Free for non commercial usage and during development

What is so awesome about AkuaJs

AkuaJs has its own built in multidimensional analytical engine that makes data aggregation super easy and super fast. Hit F12 and try for yourself:

 require(["core/CoreBundle"], function() {    
   eAugust = E(D("Month"), "August");
   eBike = E(D("Product"), "Bike");
   eCost = E(D("Measure"), "Costs");
   eCar = E(D("Product"), "Car");
  
   cube = HyperCube(SDTL([ 
                         T([eAugust, eCar, eCost],440)
                        ,T([eAugust, eBike, eCost],77)    ]));
   
   //Query the cube                     
   console.log(cube.get(T([eAugust,  eCost])))                     
   
   // Use And() concatenation to query the cube
   console.log(cube.get( T([eAugust]).And(  T([eCost]) )))
  });     

Included Visualizations

Polygon Map

View Source

Pie Chart

View Source

Donut Chart

View Source

Stacked Columns

View Source

Grouped Columns

View Source

Stacked Area

View Source

Stream Graph

View Source

Normalized Area

View Source

Treemap

View Source

Column Chart

View Source

Calendar Heatmap

View Source

Sunburst

View Source

Geo Heatmap

View Source

Using AkuaJs

Add dependencies to the head section of your main html:

 <meta charset="utf-8">  <!-- it's important for d3.js -->
 <script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
 <script src="https://cdn.rawgit.com/Qrist0ph/AkuaJs/latest/dist/plain/libs/D3/d3.min.js"></script>
 <script data-main="https://cdn.rawgit.com/Qrist0ph/AkuaJs/latest/dist/plain/main.js" src="https://cdn.rawgit.com/Qrist0ph/AkuaJs/latest/dist/plain/libs/require.js"></script>
 <link rel="stylesheet" href="https://cdn.rawgit.com/Qrist0ph/AkuaJs/latest/dist/plain/libs/nvd3/nv.d3.min.css" type="text/css" />
Use it like that:

    require(["BarChartNvd3"], function(TestChart) {
        eJune = E(D("Month"), "June");
        eAugust = E(D("Month"), "August");
        ePoland = E(D("Country"), "Poland");        
        eCar = E(D("Product"), "Car");
        eBike = E(D("Product"), "Bike");
        eBoat = E(D("Product"), "Boat");
        eCost = E(D("Measure"), "Costs");
        eRevenue = E(D("Measure"), "Revenue");
        barchart = TestChart({
            axis0: A({
                crosslists:
                [
                    TCL([
                        T([eCar]), T([eBike]), T([eBoat])
                    ]),
                    TCL([
                        T([eAugust])
                    ])
                ]
            }),
            slicer: T([eCost]),
            Connection : LocalCubeConnection(HyperCube(SDTL([ 
                         T([eAugust, eCar, eCost],440)
                        ,T([eAugust, eBike, eCost],77)    
                        ,T([eAugust, eBoat, eCost],120)])))
        });
        barchart.getViewCaller(jQuery("#center"));
    });