Круговая диаграмма с черепахами

есть ли пример создания круговой диаграммы с использованием только модуля черепахи и списка, предоставленного лектором для фитона? Большинство результатов, которые я нашел, обычно добавляют некоторые другие модули, такие как pychart. действительно Нужна помощь в этом для моего теста.

вот что дано: - chart_title = 'Расходы Комиссии по государственной службе в Квинсленде']

segment_labels = ['Безопасность', 'Образование', 'Транспорт', 'Здоровье', 'Другое']

проценты = [0,1, 0,25, 0,16, 0,2, 0,29]

Мне удалось сделать ciril и даже линии. Как я могу включить строку в соответствии с заданными значениями???

это мой код ... очень любительский, но это мой стандарт, так как я очень борюсь с этим классом программирования.

для i в диапазоне (len (проценты)):

if i!=0:
    if i in range(len(percentages))>=0.25:
        goto(0,320)
        right(-205)
        pendown()
        goto(0,0)
        fd(320)
        color('dark green')
        width(4)
        penup()
    elif i in range(len(percentages))>=0.16:
        goto(0,320)
        right(-245)
        pendown()
        goto(0,0)
        fd(320)
        color('dark green')
        width(4)
        penup()

Кажется, он рисует то же самое, даже если я установил для него elif. может кто-нибудь объяснить мне, почему и как мне это исправить???


person user3463012    schedule 26.03.2014    source источник
comment
Спасибо за ответ. Не ищу прямого ответа, просто нужна помощь в том, как это сделать. Действительно новичок в программировании. Что помогает. Очень ценил это. Теперь моя проблема заключается в том, как мне заставить круг черепахи поворачиваться на 36 градусов и т. д. вместо обычных 360 градусов?   -  person user3463012    schedule 31.03.2014
comment
Мне удалось поднять круговую диаграмму, но как именно мне это сделать, чтобы моя строка знала значение из списка???   -  person user3463012    schedule 04.04.2014


Ответы (2)


Просто отвечая на ваш вопрос 2 дня назад -

for a_value in percentages:, направление моей черепахи будет: a_value, умноженное на 360. Затем моя черепаха повернет налево в этом направлении, уйдет, нарисовав линию, а затем вернется к середине круга.

Это будет конец моей петли. Когда начнется следующая петля, моя черепашка - повернет налево в направлении следующего a_value в percentages, прогуляется и нарисует линию, а затем вернется в середину.

По сути, моя черепаха будет продолжать делать это для каждого значения в percentages до тех пор, пока в списке percentages ничего не останется. Просто помните, что ваш цикл начинается, когда вы выполняете команду for - то, что ваш питон говорит простым языком: «Для каждого значения в процентах я хочу, чтобы вы сделали следующее:», и он выполняет все, что находится под этим.

person user3458236    schedule 06.04.2014

Насколько я знаю, это для задания, я не могу просто передать код для него.

В этом есть несколько элементов, надеюсь, я смогу указать вам общее направление работы над решением :)

Во-первых, круговая диаграмма — это просто круг с линиями в нем для представления значений. В Turtle есть функция круга, так что бум, круговая диаграмма уже зародилась.

Во-вторых, вам нужно преобразовать эти элементы в «процентах» в значимое значение. (подсказка, круг имеет 360 градусов), который я собираюсь назвать процент_заголовок, чтобы упростить объяснение.

В-третьих, создавая цикл, вам нужно, чтобы черепашка рисовала линию для каждого процента_заголовка. Итак, для каждого значения в процентах поверните свою черепашку на процент_заголовок, проведите линию от середины круга к внешнему, а затем обратно к середине, готовясь перейти к следующему проценту_заголовка.

В конце этого у вас должен быть круг с кучей нарисованных линий, которые представляют проценты.

person user3458236    schedule 29.03.2014
comment
слава за признание домашнего задания и предложение обобщенного руководства по сравнению с вставкой ответа! - person hrbrmstr; 29.03.2014