LineCollection, перерисовка PatchCollectionPython

Программы на Python
Ответить Пред. темаСлед. тема
Гость
 LineCollection, перерисовка PatchCollection

Сообщение Гость »


Я пытаюсь создать блокнот Jupyter с графиком matplotlib, в котором LineCollection и PatchCollection (кругов) можно изменить с помощью ползунка:
>
импортировать numpy как np импортировать matplotlib.pyplot как plt из matplotlib.collections импортировать LineCollection, CircleCollection, PatchCollection из matplotlib.patches import Circle из взаимодействия импорта ipywidgets, FloatSlider, Layout Блокнот %matplotlib рис = plt.figure() топор = plt.axes() линии = LineCollection(np.array([[[0,0],[1,1]]])) круги = PatchCollection([Круг((.5,.5),.5)]) ax.add_collection(линии) ax.add_collection(круги) #lines.set_segments([[[0,1],[1,0]]]) #circles.set_paths([Круг((.5,.5),.1)]) взаимодействовать(лямбда s: круги.set_paths([Круг((.5,.5),s)]), s = FloatSlider(мин = 0, макс = 0,5, шаг = 01)) взаимодействовать(лямбда т:lines.set_segments([[[0,t],[1,1-t]]]), t = FloatSlider(мин = 0, макс = 1, шаг = 0,01)) Это отлично работает для LineCollection, но изменение параметра для PatchCollection не приводит к перерисовке фигуры. Изменение функции PatchCollection на включение figs.canvas.draw() решает проблему, поэтому я подумал, что PatchCollection.set_paths() в отличие от PatchCollection.set_paths() code>LineCollection.set_segments() не запускает перерисовку. Однако в строке с комментариями circles.set_paths() действительно, кажется, вызывает перерисовку. Может ли кто-нибудь объяснить мне, что происходит? Если возможно, мне бы хотелось стабильного поведения.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Получить объект Line2d от LineCollection
    Anonymous » » в форуме Python
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Плагин Facebook Page — динамическая перерисовка/изменение ширины (адаптивный/RWD)
    Гость » » в форуме CSS
    0 Ответы
    35 Просмотры
    Последнее сообщение Гость
  • Плагин Facebook Page — динамическая перерисовка/изменение ширины (адаптивный/RWD)
    Гость » » в форуме Javascript
    0 Ответы
    37 Просмотры
    Последнее сообщение Гость
  • Проблемы WinForms Invalidate(), перерисовка максимально быстрая
    Anonymous » » в форуме C#
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Перерисовка элементов управления завершается с ошибкой, когда элементы управления Edit выдают предупреждение Too Tip в д
    Anonymous » » в форуме C++
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»