По сути, я пытаюсь этого добиться. Но я изо всех сил пытаюсь понять, как я могу применить это к стержням. Список для использования) и хочу установить цвет текущей панели (на каждом кадре анимации) на другой цвет, чем другие, чтобы показать, какой элемент в списке, алгоритм в настоящее время сортируется. < Br/> Я попытался получить доступ к Barcontainer в функции animate () и создать цвета в качестве отдельного генератора для каждого кадра и назначать список цветов таким образом, среди прочего, среди прочего. Полем Я изо всех сил пытаюсь понять, как я могу этого достичь, без переиздания всех моих модулей и сбивая поколения сюжета с самими алгоритмами.
ниже мой сюжет. > Модуль: < /p>
import matplotlib.pyplot as plt
import matplotlib.animation as animation
import sortalgorithms as sort
import random
fig, axis = plt.subplots()
bar_plots = axis.bar(0, 0)
text = axis.text(0, 0, 0)
iteration_counter = []
def animate(size, rectangle, iteration):
for rect, val in zip(rectangle, size):
rect.set_height(val)
iteration[0] += 1
text.set_text("Iterations : {}".format(iteration[0]))
def plot_algorithm(selected_algorithm, sample_size=None, given_data=None):
global fig, axis
global bar_plots
global text
global iteration_counter
fig, axis = plt.subplots()
data_set = []
generator = ()
if given_data is None:
[data_set.append(x) for x in range(1, int(sample_size))]
random.shuffle(data_set)
elif sample_size is None:
data_set = given_data
if selected_algorithm == 1:
generator = sort.bubble_sort(data_set)
elif selected_algorithm == 2:
generator = sort.visual_merge_sort(data_set)
elif selected_algorithm == 3:
generator = sort.insertion_sort(data_set)
bar_plots = axis.bar(range(len(data_set)), data_set, align="edge")
if len(data_set)
Кроме того, я знаю, что это не особенно читается или "Pythonic", я обещаю, что мой план состоял в том, чтобы поработать над этим, когда у меня появился этот треск. < /p>
def bubble_sort(data_set):
for n in range(len(data_set) - 1, 0, -1):
swapped = False
for i in range(n):
if data_set > data_set[i + 1]:
data_set, data_set[i + 1] = data_set[i + 1], data_set
swapped = True
yield data_set
if not swapped:
break
yield data_set
Подробнее здесь: https://stackoverflow.com/questions/793 ... canimation
Как изменить цвет отдельного бара в матовой функции? ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение