Small utility to automate the generation of think-cell graphs.
Project description
thinkcell 📊
thinkcell is a simple unofficial python library that helps you generate presentations in a quick and automated way.
In order to use it you will need a valid and working think-cell license and installation.
Installation
thinkcell is available on PyPi.
$ pip install thinkcell
Tutorial and usage
Let us say you have generated a template according to think-cell's automation guidelines called simple-template.pptx
with the following chart called Chart1
:
The thinkcell library helps you generate a .ppttc
file so that you can generate presentations based on that template using python:
from thinkcell import Thinkcell
template_name = "simple-template.pptx"
categories = ["Ads", "Revenue", "Losses"]
chart_name = "Chart1"
field_name = "chart_caption"
text = "Some relevant KPIs"
filename = "simple-example.ppttc"
data = [["Amazon", 1, 11, 14], ["Slack", 8, 2, 15], ["Ford", 1, 2, 12]]
tc = Thinkcell() # create thinkcell object
tc.add_template(template_name) # add your template
tc.add_textfield(
template_name=template_name,
field_name=field_name,
text=text,
) # add your text field
tc.add_chart(
template_name=template_name,
chart_name=chart_name,
categories=categories,
data=data,
) # add you categories and data
tc.save_ppttc(filename=filename)
Once done, go ahead and double click the generated simple-example.ppttc
file, and your chart will open. Save it and you are done!
You can also derive your chart from a Pandas dataframe.
Make sure you have pandas installed (e.g., pip install pandas
)
from thinkcell import Thinkcell
import pandas
template_name = "simple-template.pptx"
chart_name = "Chart1"
filename = "simple-example.ppttc"
dataframe = pandas.DataFrame(
columns=["Company", "Ads", "Revenue", "Losses"],
data=[["Amazon", 1, 11, 14], ["Slack", 8, 2, 15], ["Ford", 1, 2, 12]],
)
tc = Thinkcell() # create thinkcell object
tc.add_template(template_name) # add your template
tc.add_chart_from_dataframe(
template_name=template_name,
chart_name=chart_name,
dataframe=dataframe,
) # add your dataframe
tc.save_ppttc(filename=filename)
Visit the examples folder for more examples and source files.
If you wish to learn more about this process, visit the think-cell automation documentation.
Contributing
Start by forking this repo.
Install the development dependencies (you probably want to do this in a virtual environment):
$ pip install -r requirements-dev.txt
Make sure the tests run:
$ pytest
Then you can create a branch and submit a pull request.
To-dos
- Create docstrings.
- Handle duplicate template names.
- Produce documentation.
- Pandas dataframe support.
Note: This project is in no way affiliated with think-cell Sales GmbH & Co. KG. I just wanted to make my (and hopefully your) life easier.
Project details
Release history Release notifications | RSS feed
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
Hashes for thinkcell-21.10.12-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3741edd62ef700eb6d58ea9fb7840e21b0544814735b9b11ac97dded7d4dff59 |
|
MD5 | 9d8769e47f56e911e4f826940a6c3bc0 |
|
BLAKE2b-256 | 80c148841ca8f8e082b61522d0fa19a605f93bdae4a9b4cc9752e24f603b0b95 |