Animate a timelapse of word cloud
Project description
AnimatedWordCloud ver 1.0.-1
UNDER CONSTRUCTION
AnimatedWordCloud animates the timelapse of your words vector.
Examples!
Using Elon Musk's tweets.
(C) Elon Musk
How to use?
Requirements
Python (3.8 <= version <= 3.12)
install
BE CAREFUL of the name
❌AnimatedWordCloud
✅AnimatedWordCloudTimelapse
pip install AnimatedWordCloudTimelapse
coding
See Example Notebook for details
Using default configuration
from AnimatedWordCloud import animate
# data must be list[("time name", dict[str, float])]
timelapse_wordvector = [
(
"time_0", #time stamp
{
"hanshin":0.334, #word -> weight
"chiba":0.226
}
),
(
"time_1",
{
"hanshin":0.874,
"fujinami":0.609
}
),
(
"time_2",
{
"fujinami":0.9,
"major":0.4
}
)
]
# animate!
# the animation gif path is in this variable!
path = animate(timelapse_wordvector)
Editing configuration
from AnimatedWordCloud import animate, Config
config = Config(
what_you_want_to_edit = editing_value
)
timelapse = # adding time lapse data
#give the config to second parameter
animate(timelapse, config)
Parameters of Config
All has default value, so just edit what you need
parameter name | type | meaning |
---|---|---|
font_path | str | Path to the font file. |
output_path | str | Parh of the output directory |
max_words | int | max number of the words in the screen |
max_font_size | int | Maximum font size of the word |
min_font_size | int | Minimum font size of the word |
image_width | int | Width of the image |
image_height | int | Height of the image |
background_color | str | Background color. This is based on Pillow.Image.new() |
color_map | str | color map used for coloring words This is based on matplotlib colormap |
allocation_strategy | str(literal) | allocation algorithm method. This will change the allocation of the words in the output. There is "magnetic" now. |
image_division | int | precision of allocation calculation. Higher the preciser, but calculation slower |
verbosity | str(literal) | logging. silent: nothing minor: bars to know the progress debug: all progress. noisy |
transition_symbol | str | written in the image |
starting_time_stamp | str | time stamp of the first frame (before the first time stamp in the input timelapse data) |
duration_per_interpolation_frame | int | milliseconds per interpolation frame |
duration_per_static_frame | int | milliseconds per staic (frame correspond to timestamp of wordvector) frame |
n_frames_for_interpolation | int | how many frames will be generated for interpolation between each frames |
interpolation_method | str(literal) | The method of making movement There is "linear" now |
drawing_time_stamp | bool | Whether to draw time stamp on the image |
time_stamp_color | str | Color of the time stamp. This is based on Pillow ImageColor |
time_stamp_font_size | int | Font size of the time stamp. If None(default), it will be set to 75% of max_font_size |
time_stamp_position | tuple[int, int] | Position of the time stamp. If None(default), it will be set to (image_width0.75, image_height0.75) which is right bottom. |
intermediate_frames_id | str | Static images of each frame of itermediate product will be saved as "{intermediateframes_id}{frame_number}.png". If None(default), this will be set randomly. |
Want to contribute?
Look at CONTRIBUTING.md first.
Maintainers
-
Konbraphat51: Head Author
-
SuperHotDogCat: Author
Want to support?
⭐Give this project a star⭐
This is our first OSS project, ⭐star⭐ would make us very happy⭐⭐⭐
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
Close
Hashes for AnimatedWordCloudTimelapse-0.9.6.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15421389679bcd87d208dcbedfd14a3cee0dfdacbfbacf936ba6cbcec2cd2885 |
|
MD5 | 9fa47c18ae7109a780529d7e72610542 |
|
BLAKE2b-256 | b1505a283f456f47a91e292523eb4095f9ef592c74dd218387232ba1bc905412 |
Close
Hashes for AnimatedWordCloudTimelapse-0.9.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a2135438cd5f756fe42c3e667039f440dc7491606f322b024919c505ac60b9cf |
|
MD5 | d8710018df54cf95a775f4276517022f |
|
BLAKE2b-256 | 793a8b83c8f9360386f7218db6e7d7971812005da6bf826ffa8de033f79528ac |