Это библиотека Python, созданная с использованием Pygame, которая управляет созданием графиков, которые обновляются динамически, отображающие изменения X и Y с течением времени.
Этот пакет будет добавлен в PIP, чтобы было бы достаточно простой "PIP установить Dynamic_graphs_with_pygame". В противном случае, клонировать репозиторий GitHub.
Прямо сейчас поддерживаемые графики, которые можно сделать: гистограммы, Line_graphs и графики рассеяния. Вы также можете использовать логику библиотеки, чтобы добавить свой собственный тип графиков! Это довольно легко просто посмотрите, как были выполнены существующие функции, и сделать что -то подобное. Внимание! Pygame имеет ограничения с отображением очень маленьких объектов, обратите внимание на это и посмотрите, как обрабатывается случай ширины бина гистограммы <1.
Обязательно воспользуйтесь способностью этой библиотеки рисовать объекты в Pygame, которые имеют альфа (прозрачность). Таким образом, вы можете отображать разные графики друг на друга.
Взгляните на example_usage.py тоже.
Обратите внимание, что все функции существуют внутри класса, называемого DynamicPygameGraphs. По сути, вам нужно сначала сделать экземпляр этого класса с деталями, такими как позиции осей и экрана Pygame, в котором вы хотите отобразить его. (Ваши значения x могут быть больше, чем размер оси graph_x)
Пример: pygame_graphs_instance = dynamicpygamegraphs (x, y, screen)
После этого вы можете использовать этот экземпляр, чтобы нарисовать график по вашему выбору на экране.
Пример: pygame_graphs_instance.dynamic_histogram (x_values = np.array ([1, 0, 2, 3, 0, 1]), bin_size = 1, bar_color = (255, 0, 0, 123), graph_x = 500, graph_y = 500, graph_y_y_yme_yme_yme_yme_lame = ' x_tick_marks = 5, y_tick_marks = 5, y_amplifier = 1, graph_tick_marks_font = ne, graph_tick_marks_text_color = (0, 0, 0), graph_tick_marks_text_space_from_x_axis = 10, graph_marks_stax_space_space_space_from_xrom_xis_xis_yx_space_space_space_space_space_space_from_sholor = 10, 0, 0) move_zero_along_x_axis = 0, Zero_tick_mark_text_color = (0, 0, 0), bin_array_is_given_as_x_values = true, haf_extra_bin = true)
Конечно, вам не нужно заполнять все эти переменные, все они имеют предварительно ориентированные значения. Что касается того, что именно они означают, обращайтесь к комментариям в фактическом коде.
Прокрутка достигается с помощью стрел клавиатуры по умолчанию. Вы можете изменить это, посмотрите на функцию прокрутки.
Внимание: для гистограммы, если вы хотите, чтобы некоторые из ваших бункеров были отображены в виде отрицательного вдоль x_axis, используйте преимущества параметра move_zero_along_x_axis, чтобы установить, какая бина соответствует нулевой позиции.
Внимание: если ваши массивы становятся все больше, динамические графики могут начать отставать через некоторое время. Решением было бы, возможно, удалить некоторые элементы из массивов, если их длина пройдет определенный порог.
Python 3.12.2 Pygame 2.5.2 Numpy 1.26.4