python
from asciimatics.scene import Scene
from asciimatics.screen import Screen
from asciimatics.effects import Print
from asciimatics.renderers import BarChart
import random
def generate_data():
data = [(chr(65 + i), random.randint(1, 100)) for i in range(4)]
return data
def demo(screen, scene):
chart = BarChart(screen.width - 2, screen.height - 4, [data[0] for data in generate_data()])
effect = Print(screen, chart, screen.height - 4, transparent=False)
scene.add_effect(effect)
def main():
scenes = []
scenes.append(Scene([demo], -1))
screen = Screen.open()
screen.play(scenes, stop_on_resize=True)
Screen.close()
if __name__ == "__main__":
main()