Python based web application to import, connect and analyze manufacturing data from multiple data sources.

Overview

Analysis Platform

Analysis Platform is an open source web application to import, connect and visualize factory IoT data. It helps to collect, link and integrate data from multiple data sources. Visualizations include Digital Native QC7 Tools, which is designed especially suitable for data on manufacturing domain. Let's try data-driven process improvement by utilizing the data sleeping in the field.

FPP FPP PCP
CHM MSP PCP

What can we do with Analysis Platform?

The main activities that user can take with Analysis Platform are:

  • Check behavior of time-series or id-series data, stratify across processes (Full Points Plot)
  • Check behavior of fluctuation of the distribution (Ridgeline Plot)
  • Check correlation between variables and clusters in distribution (Multiple Scatter Plot)
  • Check behavior of each category/group (Stratified Plot)
  • Check behavior of related to human activities & process and product behavior (Calendar Heatmap)
  • Look for key variables that strongly relates to output (Sankey Diagram)
  • Grasp phenomenon that occurs at the same time (Cooccurrence Graph)

Analysis Platform currently supports following data sources:

  • CSV/TSV/SSV(semicolon)
  • SQLite
  • MySQL
  • PostgreSQL
  • SQL Server
  • Oracle Database

Terms of Use

On your first access to the application, you must read and agree to Terms of Use shown on modal screen.
If you are going to use "oss_start_app.bat" to run Analysis Platform with Windows embeddable package,
running the batch file is regarded as you agreed to the Terms of Use.

Requirements

Analysis Platform uses Flask framework.

  • Python (>=3.6) (Tested with Python 3.7.3)

How can we start using Analysis Platform?

First, pull this repository to your PC.

git clone https://github.com/apdn7/AnalysisPlatform.git
cd AnalysisPlatform

or you can download zip file and unzip it.

For users: Run Analysis Platform with Windows embeddable package

If you use Windows machine, you can use Windows embeddable package to run Analysis Platform without installing python. To download necessary packages and activate Analysis Platform, you can run "oss_start_app.bat" (beforehand, read Terms of Use carefully).

Double click "oss_start_app.bat"

This batch file will automatically download:

Note:
If you are connecting internet using proxy, 
you might have to edit "oss_start_app.bat" and specify the address unless it is registered in your environmental variable.
Open "oss_start_app.bat" with any text editor, and you will find
proxy setting on row 7-8. Remove REM from those rows and fill in HTTP_PROXY and HTTPS_PROXY.

Analysis Platform is activated after all downloads are finished.

Analysis Platform uses Port 6868 by default.
Access below URL to access Analysis Platform. If another program already uses port 6868, you can change the setting (See Basic Settings).

http://127.0.0.1:6868/

Downloads are only excecuted only if above files were not detected, so you can use use "oss_start_app.bat" for the next activation. (Analysis platform detects a folder named python_embeddedon the same level as AnalysisPlatform)

Analysis Platform can run without internet connection. If you want to use this application on machine which has no internet connection (for example, intranet), you can first download all required files on other machine (which has internet connection), then copy entire files.

For developers: Run Analysis Platform with Python installed on your machine

Install requirements:

pip install -r requirements/common.txt

If pip install fails, try using Python 3.7.3.
Analysis Platform is activated by following command

python main.py

Corresponding ODBC driver must be installed to use SQL Server and Oracle Database.

How do we shut down Analysis Platform?

To shut down Analysis Platform,
press shut down button on bottom of sidebar (this button is only available on host machine),
or you can press Ctrl + C on your console.

Basic Settings

Basic settings of Analysis Platform is defined in info field of histview2/config/basic_config.yml. You can open the file with any text editor and set:

  • port-no: Port number that Analysis Platform use (default: 6868)
  • language: Language used in GUI. For example, if you want to use Japanese, set "JA". If empty or invalid value is set, English is used.
    See language selectbox on upper right corner of GUI for abbreviations of each language (default: empty)
  • hide-setting-page: If True, hides link to config page (default: False)

If you want to initialize the application, remove instance folder and histview2/config/basic_config.yml.
These files are generated on the next activation.

Is there any sample data that we can use?

By default, Analysis Platform contains sample data and corresponding settings to get an overview of each visualization.
Data is stored as TSV file under the subdirectories in /sample_data:

  • /assembly: Quality data
    • /1_parts_feed
      • 20220228.tsv
    • /2_inspection
      • 20220228.tsv
  • /parts_processing: Machine data
    • /1_machine_parameter_a
      • 20220311.tsv
    • /2_machine_parameter_b
      • 20220311.tsv
    • /3_finishing
      • 20220311.tsv
  • /alarm_signal_cog: Daily occurence of machine alarms
    • 20200401.tsv

Above data will be automatically imported after activation.
You can call each sample visualization from 'Load' or 'Bookmark' on upper right corner of GUI.

If you do not need those data, you can either initialize the application by removing instance folder before the activation,
or you can just remove each data source setting from GUI.

License

Analysis Platform is released under MIT License.
See our LICENSE for more detail.

You might also like...

A tool that enables developers to connect multiple applications without the need to develop any interface.

Flooq A tool that enables developers to connect multiple applications without the need to develop any interface. Environments Env Service Status stagi

Jul 1, 2022

In this project, I built a simple HTML list of To-Do tasks. Using webpack to bundle JS functionality and other sources.

To-do-list App A simple To-do-list app using DOM manipulation. Built With HTML/CSS JavaScript Webpack Jest Live Demo Live Demo Getting Started Get a c

Nov 5, 2022

typescript-to-jsonschema generates JSON Schema files from your Typescript sources.

fast-typescript-to-jsonschema English | 简体中文 a tool generate json schema from typescript. Feature compile Typescript to get all type information conve

Nov 28, 2022

Here are the sources for the wdi5 workshop at UI5con 2022.

wdi5 workshop at UI5con 2022 Here are the sources for the wdi5 workshop at UI5con 2022. prerequisites please have this installed on your 'puter: Node

Oct 19, 2022

A web application that allows the user to connect through Unstoppable Domains and claim a small block of the site

A web application that allows the user to connect through Unstoppable Domains and claim a small block of the site

FRAGMENTED Summary A web application that allows the user to connect through Unstoppable Domains and claim a small block of the site. Each user will b

Jan 24, 2022

The app's backend is written in Python (Flask) and for search it uses Elasticsearch. I used this app as candidate application for learning out how to build, run and deploy a multi-container environment (docker-compose).

foodtrucks-app-docker-compose The app's backend is written in Python (Flask) and for search it uses Elasticsearch. I used this app as candidate applic

Oct 24, 2022

Import/Export data from and to your database in just few clicks.

Import/Export data from and to your database in just few clicks.

Strapi Plugin Import Export Entries Import/Export data from and to your database in just few clicks. Features Import Import data directly from the Con

Dec 28, 2022

True P2P concept for your p2p powered website/app/client. MSC/MEP (Multiple Strategy Concept/Multiple Entry Points)

True P2P concept for your p2p powered website/app/client. MSC/MEP (Multiple Strategy Concept/Multiple Entry Points)

TRUE P2P CONCEPT - Lets redecentralize the web This repo is just conceptual. Active development of the endproduct (TRUE P2P) happens here https://gith

Mar 29, 2022
Releases(v4.0.1)
  • v4.0.1(Oct 24, 2022)

    This version fixes issues with the activation of the Analysis Platform.

    • Fixed bug where Analysis Platform can not activate when changing the directory after initial activation
    • Fixed bug in oss_start_app.bat where pip failed to install modules (caused when using pip 22.3)
    Source code(tar.gz)
    Source code(zip)
  • v4.0.0(Oct 20, 2022)

Owner
Analysis Platform +DN7
Analysis Platform +DN7
This is a project that is used to execute python codes in the web page. You can install and use it in django projects, You can do any operations that can be performed in python shell with this package.

Django execute code This is a project that is used to execute python codes in the web page. You can install and use it in django projects, You can do

Shinu 5 Nov 12, 2022
Online Inventory Control System for an apparel manufacturing company "CASANOVA" (Pvt) Ltd. Technology stack: Node.js, Express.js, MongoDB Atlas, React.js (MERN Stack).

Project Name - Online Inventory Control System for an apparel manufacturing company "CASANOVA". The project was given a "A" grade. Group Leader - IT20

Pasindu Rukshan 1 Dec 26, 2021
Connect Web Integration illustrates the integration of Connect-Web in various JS frameworks and tooling

Connect Web Integration Connect Web Integration is a repository of example projects using Connect-Web with various JS frameworks and tooling. It provi

Buf 43 Dec 29, 2022
A web app to post emoji implemented in connect-go and connect-web.

emotter Emotter is an app to post and share single emoji. This is an example app of connect. Example https://emotter.syumai.com API: Cloud Run Web cli

syumai 11 Oct 30, 2022
A plugin that can query multiple APIs for movies, series, anime, games, music and wiki articles, and import them into your vault.

Obsidian Media DB Plugin A plugin that can query multiple APIs for movies, series, anime, games, music and wiki articles, and import them into your va

Moritz Jung 58 Dec 21, 2022
⚡Chrome extension allows you to create lists of Google and Github dork to open multiple tabs with one click, import "scope/out of scope" from #HackerOne #Bugcrowd #Intigriti ...

FastDork v0.1 This chrome extension allows you to create lists of Google and Github dork to open multiple tabs with one click, import "scope/out of sc

skvndr 74 Dec 31, 2022
Analyze dependencies in your Deno project

Analyze dependencies in your Deno project

DjDeveloper 3 Feb 20, 2022
A set of connectors to describe, parse and process the data sources provided by websites and social networks

HUDI-PACKAGE-CONNECTORS What is this repository for? A set of connectors to describe, parse and process the data sources provided by websites and soci

HUDI 8 Aug 5, 2022
JSON Visio is data visualization tool for your json data which seamlessly illustrates your data on graphs without having to restructure anything, paste directly or import file.

JSON Visio is data visualization tool for your json data which seamlessly illustrates your data on graphs without having to restructure anything, paste directly or import file.

Aykut Saraç 20.6k Jan 4, 2023
11ty starter: uses md and notion as data sources

eleventy_notion_starter 11ty starter: uses md and notion as data sources. Based on https://github.com/siakaramalegos/11ty-sia-blog. Used to power http

Thiago Margarida 18 Oct 26, 2022