python-gantt-csv manage gantt.Task arguments with csv format.
Project description
Requirements
This projects needs the following libraries:
python-gantt see http://xael.org/pages/python-gantt-en.html
Additionnal requirements
Installation
pip install python-gantt-csv
Definition of Task Arguments in CSV Format
column name |
valid value |
---|---|
name |
str |
start |
‘today’ or iso format date (Ex: ‘2014-12-26’) |
duration |
int |
percent_done |
int |
resources |
‘None’ or str or colon separated str (Ex: ‘ANO:JLS’) |
depends_of |
‘None’ or unique str or colon separated unique str (Ex: ‘1:2’) |
color |
Hex color (Ex: #FF8080) |
id |
unique str |
Usage
Directory structure
. ├── example1.csv ├── example2.csv └── example.py
Run example
python example.py
example1.csv
name,start,depends_of,duration,percent_done,resources,color,id tache1,2014-12-25,None,4,44,ANO,#FF8080,1 tache2,2014-12-28,None,6,0,JLS,#c70039,2 tache3,2014-12-25,1:2:6,5,50,ANO:JLS,#f37121,3 tache4,2015-01-01,1,4,40,JLS,#c0e218,4 tache6,2014-12-25,6,4,0,ANO:JLS,#f37121,5 tache7,2014-12-28,None,6,0,JLS,#c0e218,6 tache8,today,6,4,0,ANO:JLS,#111d5e,7
example2.csv
name,start,depends_of,duration,percent_done,resources,color,id tache5,2014-12-23,None,3,0,ANO:JLS,#f37121,1
example.py
#!/usr/bin/env python3 # -*- coding: utf-8 -*- import datetime from pathlib import Path import gantt from gantt_csv import create_project_from_csv, RESOURCES YMD_VACATIONS = [ (2014, 12, 30), (2014, 12, 31), (2015, 1, 1), (2015, 1, 2), ] # Change font default gantt.define_font_attributes(fill='black', stroke='black', stroke_width=0, font_family="Verdana") # Add vacations for everyone for year, month, date in YMD_VACATIONS: gantt.add_vacations(datetime.date(year, month, date)) # Create project from csv files projects = [] for csv_path in Path('.').glob('*.csv'): p1 = create_project_from_csv(csv_path) projects.append(p1) # Or Create project from list # task_table = [] # with open("gantt_args1.csv", "rt", encoding="utf-8", newline='') as f: # reader = csv.reader(f) # for row in reader: # task_table.append(row) # p1 = create_project_from_table( # "Example2 project", # task_table[1:], # header=task_table[0] # ) # Create parent project parent_project = gantt.Project(name='Parent Project') # which contains the other projects for project in projects: parent_project.add_task(project) # MAKE DRAW parent_project.make_svg_for_tasks(filename='test_full.svg', today=datetime.date.today(), start=datetime.date(2014, 12, 20), end=datetime.date(2015, 2, 20)) parent_project.make_svg_for_resources(filename='test_resources.svg', today=datetime.date.today(), resources=tuple(RESOURCES.values())) parent_project.make_svg_for_tasks(filename='test_weekly.svg', today=datetime.date.today(), scale=gantt.DRAW_WITH_WEEKLY_SCALE)
Licence
GPL v3 or any later version
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file python-gantt-csv-0.4.0.tar.gz
.
File metadata
- Download URL: python-gantt-csv-0.4.0.tar.gz
- Upload date:
- Size: 86.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c9f287b6049a5324843b958f8fccf7beeee7f065c56a6285b349d0af7858361b |
|
MD5 | 7af5722e85b4c4a4bc27b852faf48ab1 |
|
BLAKE2b-256 | 9d4c2bf8fb4db22bc7b11c4a6f16e68e7f9e23f9bb3e7f0291a0723dc7a12c8a |
File details
Details for the file python_gantt_csv-0.4.0-py3-none-any.whl
.
File metadata
- Download URL: python_gantt_csv-0.4.0-py3-none-any.whl
- Upload date:
- Size: 7.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f8e32ad497958a1e3d84abf69590c096cfdbf56cfe18bf551adffd27c68644e2 |
|
MD5 | b42a6192e90970e0dc6afbcb62236fe0 |
|
BLAKE2b-256 | 9cb359c0c7bd3f2ac9001b4b77be92a3ebfc34e21c6722c40d007886d71a7bea |