SlideShare a Scribd company logo
1 of 19
Download to read offline
KNOWAGE CUSTOM CHART WIDGET: a technical guide
26 /11/2020
Davide VERNASSA
UI designer & front-end developer
davide.vernassa@eng.it
PROGRAMME
1. Custom Chart Introduction
2. The Custom Chart anatomy
3. Supported chart libraries
4. APIs
5. Live demo
6. Questions
THE CUSTOM CHART
• From KNOWAGE version 7.2
• Occupy all the corner not covered by chart widget
• Very malleable but not a chart widget replacer!
• Will extend in the future
CSS editor
HTML
editor
Javascript
editor
WIDGET ANATOMY
SUPPORTED CHART LIBRARIES
• Highcharts (7.1.1) (EE)
• Chart.js (1.0.2)
• D3.js (3.5.5)
• External CDN Libraries using <kn-import> tag
API
• API's are the shared language between Knowage and the external
chart libraries.
• You can reach data from API
• You can set data in different ways with API
• You can interact with Knowage with API
• You cannot replace all the "thinky thinky" work with API!
(but they can help you a lot!)
DOCUMENTATION
All the API's are listed and provided with examples in the documentation:
https://knowage-suite.readthedocs.io/en/7.2/functionalities-guide/cockpit/index.html#custom-chart-widget
DATASTORE
• The datastore object is the Knowage representation in the API
• You will use it as a keyword (datastore.desiredapi)
• It will contain your dataset data
• It will manage Knowage interactions
.getDataArray
• datastore.getDataArray(function(record){…}
• Returns data array
• Returns one record for every dataset row
• Return the structure you will provide
.getRecords
• datastore.getRecords()
• Returns array of objects
• Returns one object for every dataset row using the column names
• Does not allow returning customizations
.getColumn
• datastore.getColumn('yourColumn')
• Returns array of values
• Returns one value for every dataset row just for the selected column
• Allows you to choose a dataset column
• Does not allow returning customizations
.getSeriesAndData
• datastore.getSeriesAndData('column',function(record){…}
• Returns array object(series) with name from the row value of the selected
column and data with the desired structure
• Allows you to choose a dataset column
• Allows you to customize the returning structure
• Very useful for common charts structure
.sort & .filter
• datastore.sort({column':'direction'})
• Sorts the data for the desired column and direction
• If no direction is set will be ASC by default
• datastore.filter({column1:'value','column2':'value'})
• Filters the dataset for the desired column values
• Can be concatenated between them and other API
.hierarchy
• datastore.hierarchy({'levels':['levels'],'measures': {'column':'aggr'}})
• Create a tree with different levels and measure aggregations
• The levels order is the same for the hierarchy tree
• The measures can use sum, min, max aggregations
• There are many methods to get single branches, children, siblings and
value to move inside the tree
.clickManager
• datastore.clickManager(columnName, columnValue);
• Takes input data (column name and value) and pass them to Knowage
lifecycle
• The standard interactions will happen depending on what is specified for
the widget
• If no cross or preview is set a selection will be thrown
LIVE DEMO
HINTS
• Read the widget documentation on https://knowage-suite.readthedocs.io/
• Have a clear idea of the data structure needed by the chart library
• Use the common CSS editor if you want to share a common theme
• Avoid multiple identical API call, use variables instead
• Pay attention to external libraries and font inclusions weight
QUESTIONS
CHECK YOUR EMAIL!
To get full support contact our Sales Department → knowage@eng.it

More Related Content

What's hot

Installation et Configuration ee JDK et de Tomcat
Installation et Configuration ee JDK et de TomcatInstallation et Configuration ee JDK et de Tomcat
Installation et Configuration ee JDK et de TomcatMohamed Ben Bouzid
 
Livre Blanc SAS - EBG 30 cas concrets de Datavisualisation / Dataviz
Livre Blanc SAS - EBG 30 cas concrets de Datavisualisation / DatavizLivre Blanc SAS - EBG 30 cas concrets de Datavisualisation / Dataviz
Livre Blanc SAS - EBG 30 cas concrets de Datavisualisation / Datavizechangeurba
 
Examen sybase - Administration base de donnees
Examen sybase - Administration base de donneesExamen sybase - Administration base de donnees
Examen sybase - Administration base de donneeswebreaker
 
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdf
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdfChapitre 3 _Conception et analyse d’algorithme-DPR.pdf
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdfMbarkiIsraa
 
Introduction au web cours.pdf
Introduction au web cours.pdfIntroduction au web cours.pdf
Introduction au web cours.pdfElomyakobi
 
Alphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentaux
Alphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentauxAlphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentaux
Alphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentauxAlphorm
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLwebreaker
 
Arbre b (par EL HACHEM Marwan et RICHA Elias)
Arbre b (par EL HACHEM Marwan et RICHA Elias)Arbre b (par EL HACHEM Marwan et RICHA Elias)
Arbre b (par EL HACHEM Marwan et RICHA Elias)rchbeir
 
EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).
EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).
EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).vangogue
 
Fiche1 ex-sous-programme
Fiche1 ex-sous-programmeFiche1 ex-sous-programme
Fiche1 ex-sous-programmeBaghdadi Wajih
 
Fiche TD sur les systèmes informatiques
Fiche TD sur les systèmes informatiquesFiche TD sur les systèmes informatiques
Fiche TD sur les systèmes informatiquesATPENSC-Group
 

What's hot (18)

Installation et Configuration ee JDK et de Tomcat
Installation et Configuration ee JDK et de TomcatInstallation et Configuration ee JDK et de Tomcat
Installation et Configuration ee JDK et de Tomcat
 
Livre Blanc SAS - EBG 30 cas concrets de Datavisualisation / Dataviz
Livre Blanc SAS - EBG 30 cas concrets de Datavisualisation / DatavizLivre Blanc SAS - EBG 30 cas concrets de Datavisualisation / Dataviz
Livre Blanc SAS - EBG 30 cas concrets de Datavisualisation / Dataviz
 
(Cours régression)
(Cours régression)(Cours régression)
(Cours régression)
 
Examen sybase - Administration base de donnees
Examen sybase - Administration base de donneesExamen sybase - Administration base de donnees
Examen sybase - Administration base de donnees
 
Business intelligence
Business intelligenceBusiness intelligence
Business intelligence
 
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdf
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdfChapitre 3 _Conception et analyse d’algorithme-DPR.pdf
Chapitre 3 _Conception et analyse d’algorithme-DPR.pdf
 
Introduction au web cours.pdf
Introduction au web cours.pdfIntroduction au web cours.pdf
Introduction au web cours.pdf
 
Alphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentaux
Alphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentauxAlphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentaux
Alphorm.com Formation ETL Talend Open Studio (1/2) - Les fondamentaux
 
Tp n 3 linux
Tp n 3 linuxTp n 3 linux
Tp n 3 linux
 
Programmation Java
Programmation JavaProgrammation Java
Programmation Java
 
bac info : série récursivité
bac info : série récursivitébac info : série récursivité
bac info : série récursivité
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQL
 
Arbre b (par EL HACHEM Marwan et RICHA Elias)
Arbre b (par EL HACHEM Marwan et RICHA Elias)Arbre b (par EL HACHEM Marwan et RICHA Elias)
Arbre b (par EL HACHEM Marwan et RICHA Elias)
 
Cours c++
Cours c++Cours c++
Cours c++
 
Initiation r
Initiation rInitiation r
Initiation r
 
EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).
EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).
EXPOSE SUR L’ALGORITHME DU TRI À BULLES (BUBBLE SORT).
 
Fiche1 ex-sous-programme
Fiche1 ex-sous-programmeFiche1 ex-sous-programme
Fiche1 ex-sous-programme
 
Fiche TD sur les systèmes informatiques
Fiche TD sur les systèmes informatiquesFiche TD sur les systèmes informatiques
Fiche TD sur les systèmes informatiques
 

Similar to KNOWAGE CUSTOM CHART WIDGET: a technical guide

Shshsjsjsjs-4 - Copdjsjjsjsjsjakakakaaky.pptx
Shshsjsjsjs-4 - Copdjsjjsjsjsjakakakaaky.pptxShshsjsjsjs-4 - Copdjsjjsjsjsjakakakaaky.pptx
Shshsjsjsjs-4 - Copdjsjjsjsjsjakakakaaky.pptx086ChintanPatel1
 
Performing Data Science with HBase
Performing Data Science with HBasePerforming Data Science with HBase
Performing Data Science with HBaseWibiData
 
Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)
Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)
Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)Michael Rys
 
Mongo db washington dc 2014
Mongo db washington dc 2014Mongo db washington dc 2014
Mongo db washington dc 2014ikanow
 
3 CityNetConf - sql+c#=u-sql
3 CityNetConf - sql+c#=u-sql3 CityNetConf - sql+c#=u-sql
3 CityNetConf - sql+c#=u-sqlŁukasz Grala
 
Hive @ Bucharest Java User Group
Hive @ Bucharest Java User GroupHive @ Bucharest Java User Group
Hive @ Bucharest Java User GroupRemus Rusanu
 
Think Like Spark: Some Spark Concepts and a Use Case
Think Like Spark: Some Spark Concepts and a Use CaseThink Like Spark: Some Spark Concepts and a Use Case
Think Like Spark: Some Spark Concepts and a Use CaseRachel Warren
 
Creating Dynamic Charts With JFreeChart
Creating Dynamic Charts With JFreeChartCreating Dynamic Charts With JFreeChart
Creating Dynamic Charts With JFreeChartDavid Keener
 
Ten tools for ten big data areas 04_Apache Hive
Ten tools for ten big data areas 04_Apache HiveTen tools for ten big data areas 04_Apache Hive
Ten tools for ten big data areas 04_Apache HiveWill Du
 
Be A Hero: Transforming GoPro Analytics Data Pipeline
Be A Hero: Transforming GoPro Analytics Data PipelineBe A Hero: Transforming GoPro Analytics Data Pipeline
Be A Hero: Transforming GoPro Analytics Data PipelineChester Chen
 
Using existing language skillsets to create large-scale, cloud-based analytics
Using existing language skillsets to create large-scale, cloud-based analyticsUsing existing language skillsets to create large-scale, cloud-based analytics
Using existing language skillsets to create large-scale, cloud-based analyticsMicrosoft Tech Community
 
Introduction to R _IMPORTANT FOR DATA ANALYTICS
Introduction to R _IMPORTANT FOR DATA ANALYTICSIntroduction to R _IMPORTANT FOR DATA ANALYTICS
Introduction to R _IMPORTANT FOR DATA ANALYTICSHaritikaChhatwal1
 
U-SQL - Azure Data Lake Analytics for Developers
U-SQL - Azure Data Lake Analytics for DevelopersU-SQL - Azure Data Lake Analytics for Developers
U-SQL - Azure Data Lake Analytics for DevelopersMichael Rys
 
HBase Data Modeling and Access Patterns with Kite SDK
HBase Data Modeling and Access Patterns with Kite SDKHBase Data Modeling and Access Patterns with Kite SDK
HBase Data Modeling and Access Patterns with Kite SDKHBaseCon
 
Taming the Data Science Monster with A New ‘Sword’ – U-SQL
Taming the Data Science Monster with A New ‘Sword’ – U-SQLTaming the Data Science Monster with A New ‘Sword’ – U-SQL
Taming the Data Science Monster with A New ‘Sword’ – U-SQLMichael Rys
 
Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...
Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...
Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...Michael Rys
 
Apdm 101 Arc Gis Pipeline Data Model (1)
Apdm 101 Arc Gis Pipeline Data Model  (1)Apdm 101 Arc Gis Pipeline Data Model  (1)
Apdm 101 Arc Gis Pipeline Data Model (1)David Nichter, GISP
 
Graph Databases in the Microsoft Ecosystem
Graph Databases in the Microsoft EcosystemGraph Databases in the Microsoft Ecosystem
Graph Databases in the Microsoft EcosystemMarco Parenzan
 

Similar to KNOWAGE CUSTOM CHART WIDGET: a technical guide (20)

Shshsjsjsjs-4 - Copdjsjjsjsjsjakakakaaky.pptx
Shshsjsjsjs-4 - Copdjsjjsjsjsjakakakaaky.pptxShshsjsjsjs-4 - Copdjsjjsjsjsjakakakaaky.pptx
Shshsjsjsjs-4 - Copdjsjjsjsjsjakakakaaky.pptx
 
Essentials of R
Essentials of REssentials of R
Essentials of R
 
Performing Data Science with HBase
Performing Data Science with HBasePerforming Data Science with HBase
Performing Data Science with HBase
 
Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)
Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)
Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)
 
Ssn0020 ssis 2012 for beginners
Ssn0020   ssis 2012 for beginnersSsn0020   ssis 2012 for beginners
Ssn0020 ssis 2012 for beginners
 
Mongo db washington dc 2014
Mongo db washington dc 2014Mongo db washington dc 2014
Mongo db washington dc 2014
 
3 CityNetConf - sql+c#=u-sql
3 CityNetConf - sql+c#=u-sql3 CityNetConf - sql+c#=u-sql
3 CityNetConf - sql+c#=u-sql
 
Hive @ Bucharest Java User Group
Hive @ Bucharest Java User GroupHive @ Bucharest Java User Group
Hive @ Bucharest Java User Group
 
Think Like Spark: Some Spark Concepts and a Use Case
Think Like Spark: Some Spark Concepts and a Use CaseThink Like Spark: Some Spark Concepts and a Use Case
Think Like Spark: Some Spark Concepts and a Use Case
 
Creating Dynamic Charts With JFreeChart
Creating Dynamic Charts With JFreeChartCreating Dynamic Charts With JFreeChart
Creating Dynamic Charts With JFreeChart
 
Ten tools for ten big data areas 04_Apache Hive
Ten tools for ten big data areas 04_Apache HiveTen tools for ten big data areas 04_Apache Hive
Ten tools for ten big data areas 04_Apache Hive
 
Be A Hero: Transforming GoPro Analytics Data Pipeline
Be A Hero: Transforming GoPro Analytics Data PipelineBe A Hero: Transforming GoPro Analytics Data Pipeline
Be A Hero: Transforming GoPro Analytics Data Pipeline
 
Using existing language skillsets to create large-scale, cloud-based analytics
Using existing language skillsets to create large-scale, cloud-based analyticsUsing existing language skillsets to create large-scale, cloud-based analytics
Using existing language skillsets to create large-scale, cloud-based analytics
 
Introduction to R _IMPORTANT FOR DATA ANALYTICS
Introduction to R _IMPORTANT FOR DATA ANALYTICSIntroduction to R _IMPORTANT FOR DATA ANALYTICS
Introduction to R _IMPORTANT FOR DATA ANALYTICS
 
U-SQL - Azure Data Lake Analytics for Developers
U-SQL - Azure Data Lake Analytics for DevelopersU-SQL - Azure Data Lake Analytics for Developers
U-SQL - Azure Data Lake Analytics for Developers
 
HBase Data Modeling and Access Patterns with Kite SDK
HBase Data Modeling and Access Patterns with Kite SDKHBase Data Modeling and Access Patterns with Kite SDK
HBase Data Modeling and Access Patterns with Kite SDK
 
Taming the Data Science Monster with A New ‘Sword’ – U-SQL
Taming the Data Science Monster with A New ‘Sword’ – U-SQLTaming the Data Science Monster with A New ‘Sword’ – U-SQL
Taming the Data Science Monster with A New ‘Sword’ – U-SQL
 
Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...
Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...
Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...
 
Apdm 101 Arc Gis Pipeline Data Model (1)
Apdm 101 Arc Gis Pipeline Data Model  (1)Apdm 101 Arc Gis Pipeline Data Model  (1)
Apdm 101 Arc Gis Pipeline Data Model (1)
 
Graph Databases in the Microsoft Ecosystem
Graph Databases in the Microsoft EcosystemGraph Databases in the Microsoft Ecosystem
Graph Databases in the Microsoft Ecosystem
 

More from KNOWAGE

Knowage roadmap-2022 (1)
Knowage roadmap-2022 (1)Knowage roadmap-2022 (1)
Knowage roadmap-2022 (1)KNOWAGE
 
Knowage8 dashboard creation
Knowage8 dashboard creationKnowage8 dashboard creation
Knowage8 dashboard creationKNOWAGE
 
Knowage 8 presentation
Knowage 8   presentationKnowage 8   presentation
Knowage 8 presentationKNOWAGE
 
Knowage Location Intelligence @ bdp2020
Knowage Location Intelligence @ bdp2020Knowage Location Intelligence @ bdp2020
Knowage Location Intelligence @ bdp2020KNOWAGE
 
Knowage BIG DATA VISUALIZATION @bdp2020
Knowage BIG DATA VISUALIZATION @bdp2020Knowage BIG DATA VISUALIZATION @bdp2020
Knowage BIG DATA VISUALIZATION @bdp2020KNOWAGE
 
Knowage advanced analytics @ bdp2020
Knowage advanced analytics @ bdp2020Knowage advanced analytics @ bdp2020
Knowage advanced analytics @ bdp2020KNOWAGE
 
Knowage overview @ bdp2020
Knowage overview @ bdp2020Knowage overview @ bdp2020
Knowage overview @ bdp2020KNOWAGE
 
MAP WIDGET - Knowage Technical Webinars
MAP WIDGET - Knowage Technical WebinarsMAP WIDGET - Knowage Technical Webinars
MAP WIDGET - Knowage Technical WebinarsKNOWAGE
 
R & PYTHON WIDGET - KNOWAGE
R & PYTHON WIDGET - KNOWAGER & PYTHON WIDGET - KNOWAGE
R & PYTHON WIDGET - KNOWAGEKNOWAGE
 
Knowage essential training
Knowage essential trainingKnowage essential training
Knowage essential trainingKNOWAGE
 
Knowage official presentation 2018
Knowage official presentation 2018Knowage official presentation 2018
Knowage official presentation 2018KNOWAGE
 

More from KNOWAGE (11)

Knowage roadmap-2022 (1)
Knowage roadmap-2022 (1)Knowage roadmap-2022 (1)
Knowage roadmap-2022 (1)
 
Knowage8 dashboard creation
Knowage8 dashboard creationKnowage8 dashboard creation
Knowage8 dashboard creation
 
Knowage 8 presentation
Knowage 8   presentationKnowage 8   presentation
Knowage 8 presentation
 
Knowage Location Intelligence @ bdp2020
Knowage Location Intelligence @ bdp2020Knowage Location Intelligence @ bdp2020
Knowage Location Intelligence @ bdp2020
 
Knowage BIG DATA VISUALIZATION @bdp2020
Knowage BIG DATA VISUALIZATION @bdp2020Knowage BIG DATA VISUALIZATION @bdp2020
Knowage BIG DATA VISUALIZATION @bdp2020
 
Knowage advanced analytics @ bdp2020
Knowage advanced analytics @ bdp2020Knowage advanced analytics @ bdp2020
Knowage advanced analytics @ bdp2020
 
Knowage overview @ bdp2020
Knowage overview @ bdp2020Knowage overview @ bdp2020
Knowage overview @ bdp2020
 
MAP WIDGET - Knowage Technical Webinars
MAP WIDGET - Knowage Technical WebinarsMAP WIDGET - Knowage Technical Webinars
MAP WIDGET - Knowage Technical Webinars
 
R & PYTHON WIDGET - KNOWAGE
R & PYTHON WIDGET - KNOWAGER & PYTHON WIDGET - KNOWAGE
R & PYTHON WIDGET - KNOWAGE
 
Knowage essential training
Knowage essential trainingKnowage essential training
Knowage essential training
 
Knowage official presentation 2018
Knowage official presentation 2018Knowage official presentation 2018
Knowage official presentation 2018
 

Recently uploaded

Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 

Recently uploaded (20)

Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 

KNOWAGE CUSTOM CHART WIDGET: a technical guide

  • 1. KNOWAGE CUSTOM CHART WIDGET: a technical guide 26 /11/2020 Davide VERNASSA UI designer & front-end developer davide.vernassa@eng.it
  • 2. PROGRAMME 1. Custom Chart Introduction 2. The Custom Chart anatomy 3. Supported chart libraries 4. APIs 5. Live demo 6. Questions
  • 3. THE CUSTOM CHART • From KNOWAGE version 7.2 • Occupy all the corner not covered by chart widget • Very malleable but not a chart widget replacer! • Will extend in the future
  • 5. SUPPORTED CHART LIBRARIES • Highcharts (7.1.1) (EE) • Chart.js (1.0.2) • D3.js (3.5.5) • External CDN Libraries using <kn-import> tag
  • 6. API • API's are the shared language between Knowage and the external chart libraries. • You can reach data from API • You can set data in different ways with API • You can interact with Knowage with API • You cannot replace all the "thinky thinky" work with API! (but they can help you a lot!)
  • 7. DOCUMENTATION All the API's are listed and provided with examples in the documentation: https://knowage-suite.readthedocs.io/en/7.2/functionalities-guide/cockpit/index.html#custom-chart-widget
  • 8. DATASTORE • The datastore object is the Knowage representation in the API • You will use it as a keyword (datastore.desiredapi) • It will contain your dataset data • It will manage Knowage interactions
  • 9. .getDataArray • datastore.getDataArray(function(record){…} • Returns data array • Returns one record for every dataset row • Return the structure you will provide
  • 10. .getRecords • datastore.getRecords() • Returns array of objects • Returns one object for every dataset row using the column names • Does not allow returning customizations
  • 11. .getColumn • datastore.getColumn('yourColumn') • Returns array of values • Returns one value for every dataset row just for the selected column • Allows you to choose a dataset column • Does not allow returning customizations
  • 12. .getSeriesAndData • datastore.getSeriesAndData('column',function(record){…} • Returns array object(series) with name from the row value of the selected column and data with the desired structure • Allows you to choose a dataset column • Allows you to customize the returning structure • Very useful for common charts structure
  • 13. .sort & .filter • datastore.sort({column':'direction'}) • Sorts the data for the desired column and direction • If no direction is set will be ASC by default • datastore.filter({column1:'value','column2':'value'}) • Filters the dataset for the desired column values • Can be concatenated between them and other API
  • 14. .hierarchy • datastore.hierarchy({'levels':['levels'],'measures': {'column':'aggr'}}) • Create a tree with different levels and measure aggregations • The levels order is the same for the hierarchy tree • The measures can use sum, min, max aggregations • There are many methods to get single branches, children, siblings and value to move inside the tree
  • 15. .clickManager • datastore.clickManager(columnName, columnValue); • Takes input data (column name and value) and pass them to Knowage lifecycle • The standard interactions will happen depending on what is specified for the widget • If no cross or preview is set a selection will be thrown
  • 17. HINTS • Read the widget documentation on https://knowage-suite.readthedocs.io/ • Have a clear idea of the data structure needed by the chart library • Use the common CSS editor if you want to share a common theme • Avoid multiple identical API call, use variables instead • Pay attention to external libraries and font inclusions weight
  • 19. CHECK YOUR EMAIL! To get full support contact our Sales Department → knowage@eng.it