{"id":28231871,"url":"https://github.com/mohammadzainabbas/va-lab","last_synced_at":"2026-05-10T16:16:52.524Z","repository":{"id":60770245,"uuid":"545357367","full_name":"mohammadzainabbas/VA-Lab","owner":"mohammadzainabbas","description":"👨🏻‍💻 Lab Work for Visual Analysis (VA) ✨","archived":false,"fork":false,"pushed_at":"2023-12-15T02:37:25.000Z","size":4959,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-14T13:39:37.008Z","etag":null,"topics":["open-data","openrefine","python","visual-analysis","web-scraping"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mohammadzainabbas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-10-04T08:13:43.000Z","updated_at":"2023-01-31T20:32:12.000Z","dependencies_parsed_at":"2023-02-08T18:15:35.920Z","dependency_job_id":null,"html_url":"https://github.com/mohammadzainabbas/VA-Lab","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mohammadzainabbas/VA-Lab","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohammadzainabbas%2FVA-Lab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohammadzainabbas%2FVA-Lab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohammadzainabbas%2FVA-Lab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohammadzainabbas%2FVA-Lab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mohammadzainabbas","download_url":"https://codeload.github.com/mohammadzainabbas/VA-Lab/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohammadzainabbas%2FVA-Lab/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271275374,"owners_count":24731236,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-20T02:00:09.606Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["open-data","openrefine","python","visual-analysis","web-scraping"],"created_at":"2025-05-18T19:10:54.665Z","updated_at":"2026-05-10T16:16:47.476Z","avatar_url":"https://github.com/mohammadzainabbas.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Lab Work @ Visual Analysis 👨🏻‍💻\n\n### Table of contents\n\n- [Introduction](#introduction)\n- [About the course](#about-course)\n  \u003c!-- * [Main Topics](#main-topics) --\u003e\n- [Labs](#labs)\n  * [Lab 01 - Web Scrapping via Beautiful Soup](#lab-1)\n  * [Lab 02 - Data Visualisation with Altair](#lab-2)\n  * [Lab 03 - Interaction in Visualization with Altair](#lab-3)\n  * [Lab 04 - Basic charts with d3.js](#lab-4)\n  * [Lab 05 - Basic charts with d3.js (continue)](#lab-5)\n  * [Lab 06 - Events, Interactivity, and Animation with d3.js](#lab-6)\n- [Setup](#setup)\n  * [Create new enviornment](#create-new-env)\n  * [Setup `pre-commit` hooks](#setup-pre-commit)\n\n\n#\n\n\u003ca id=\"introduction\" /\u003e\n\n### 1. Introduction\n\n__`Data drives the world.`__ Nowadays, most of the data (_structured_ or _unstructured_) can be analysed via several techniques. Although, most of the data pipelines are being automated, there arises a key need to keep human in the loop. \n\nOne of the fundamental ways to keep human-machine interaction more viable is to analyse data visually (to aid the human as much as possible). `Visual Analysis` introduces some techniques and tools for _analyzing_ and _visualizing_ data.\n\n#\n\n\u003ca id=\"about-course\" /\u003e\n\n### 2. About the course\n\nDuring this course, we will be introduced to techniques and tools for _analyzing_ and _visualizing_ data. It emphasizes how to combine computation and visualization to perform effective analysis. The course consists of two parts: a series of lectures on analytics and a series of lectures on visualization. Both parts will include hands-on tutorials during which you will work on analysis problems and start to build your own tools.\n\n\u003c!-- \u003ca id=\"main-topics\" /\u003e\n\n#### 2.1. Main Topics\n\n- [x] Preliminaries, Typology of graphs, Graph analytics measures\n- [x] Basic algorithms: Random walk and Page Rank\n- [x] Label propagation, Community detection, Influence maximisation\n- [x] Graph analytics \u0026 Deep Learning --\u003e\n\n#\n\n\u003ca id=\"labs\" /\u003e\n\n### 3. Labs\n\nThe main aim of this repository is to keep track of the work we have done in __Visual Analysis (VA)__ labs. \n\n#\n\n\u003ca id=\"lab-1\" /\u003e\n\n#### 3.1. Lab 01 - Web Scrapping via Beautiful Soup\n\n[Web Scrapping via Beautiful Soup](https://beautiful-soup-4.readthedocs.io/en/latest/) is a Python package for the scraping data from the internet.\n\nPlease checkout lab's details [here](https://github.com/mohammadzainabbas/VA-Lab/tree/main/src/lab1) \n\n\u003ca id=\"lab-2\" /\u003e\n\n#### 3.2. Lab 02 - Data Visualisation with Altair\n\n[Vega-Altair](https://altair-viz.github.io/) is a declarative statistical visualization library for Python, based on Vega and Vega-Lite.\n\nPlease checkout lab's details [here](https://github.com/mohammadzainabbas/VA-Lab/tree/main/src/lab2) \n\n\u003ca id=\"lab-3\" /\u003e\n\n#### 3.3. Lab 03 - Interaction in Visualization with Altair\n\n[Vega-Altair](https://altair-viz.github.io/) is a declarative statistical visualization library for Python, based on Vega and Vega-Lite. In this lab, we will see how to use interactions with visualisation with [Vega-Altair](https://altair-viz.github.io/).\n\nPlease checkout lab's details [here](https://github.com/mohammadzainabbas/VA-Lab/tree/main/src/lab3) \n\n\u003ca id=\"lab-4\" /\u003e\n\n#### 3.4. Lab 04 - Basic charts with d3.js\n\n[D3.js](https://d3js.org/) is a producing dynamic, interactive data visualizations in web browsers. It makes use of Scalable Vector Graphics, HTML5, and Cascading Style Sheets standards.\n\nPlease checkout lab's details [here](https://github.com/mohammadzainabbas/VA-Lab/tree/main/src/lab4) \n\n\u003ca id=\"lab-5\" /\u003e\n\n#### 3.5. Lab 05 - Basic charts with d3.js (continue)\n\n[D3.js](https://d3js.org/) is a producing dynamic, interactive data visualizations in web browsers. It makes use of `Scalable Vector Graphics (SVG)`, `HTML5`, and `Cascading Style Sheets (CSS)` standards.\n\nPlease checkout lab's details [here](https://github.com/mohammadzainabbas/VA-Lab/tree/main/src/lab5) \n\n\u003ca id=\"lab-6\" /\u003e\n\n#### 3.6. Lab 06 - Events, Interactivity, and Animation with d3.js\n\n[D3.js](https://d3js.org/) is a producing dynamic, interactive data visualizations in web browsers. It makes use of `Scalable Vector Graphics (SVG)`, `HTML5`, and `Cascading Style Sheets (CSS)` standards.\n\nPlease checkout lab's details [here](https://github.com/mohammadzainabbas/VA-Lab/tree/main/src/lab6) \n\n#\n\n\u003ca id=\"setup\" /\u003e\n\n### 4. Setup\n\nIf you want to follow along with the lab exercises, make sure to clone and `cd` to the relevant lab's directory:\n\n```bash\ngit clone https://github.com/mohammadzainabbas/VA-Lab.git\ncd VA-Lab/src/\u003clab-of-your-choice\u003e\n```\n\n\u003e For e.g: if you want to practice lab # 1, then you should do `cd VA-Lab/src/lab1`.\n\n\u003ca id=\"create-new-env\" /\u003e\n\n#### 4.1. Create new enviornment\n\nBefore starting, you may have to create new enviornment for the lab. Kindly, checkout the [documentation](https://github.com/mohammadzainabbas/VA-Lab/blob/main/docs/SETUP_ENV.md) for creating an new environment.\n\n#\n\nOnce, you have activated your new enviornment, we may have to install all the dependencies for a given lab (kindly check if `requirements.txt` file exists for a given lab before running the below command):\n\n```bash\npip install -r requirements.txt\n```\n\n\u003ca id=\"setup-pre-commit\" /\u003e\n\n#### 4.2. Setup `pre-commit` hooks\n\nIn order to setup `pre-commit` hooks, please refer to the [documentation](https://github.com/mohammadzainabbas/VA-Lab/blob/main/docs/SETUP_PRE-COMMIT_HOOKS.md).\n\n#\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmohammadzainabbas%2Fva-lab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmohammadzainabbas%2Fva-lab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmohammadzainabbas%2Fva-lab/lists"}