2015-12-12 2 views
1

У меня есть программа в ipython, которая имеет два раскрывающихся меню и кнопку. Когда я нажимаю кнопку, я хочу выполнить поиск в кадре данных с помощью информации из выпадающих меню, а затем создать две гистограммы рядом. Я проверил свой код на извлечение информации из фреймворка данных, и это работает нормально, и я могу сделать новые гистограммы, в которых я нуждаюсь. То, что я хочу сделать, - это когда новый выбор сделан из выпадающих списков для старых гистограмм, которые будут обновляться новыми. На данный момент они просто появляются ниже предыдущих.Гистограмма Ipython - замените старую гистограмму на новую

Как мне это сделать?

Tldr: как обновить существующую диаграмму с новой информацией?

EDIT: Ниже приводится краткое изложение моего кода

fig = plt.figure(figsize=(10,10)) 
ax1 = fig.add_subplot(121) 
ax2 = fig.add_subplot(122) 

# Function to find results 
def search(btn): 
    plt.clf() 
    ax1.hist(results_df1.COLUMNA.dropna().values, bins=180/5, range=(-60,120)) 
    ax2.hist(results_df4.COLUMNA.dropna().values, bins=180/5, range=(-60,120)) 
    plt.show(fig) 

# Button to enter information 
btn = widgets.Button(description="Update") 
btn.on_click(search) 
display(btn) 
+0

Не могли бы вы разместить код, который у вас есть? И невозможно будет улучшить, не видя, что существует. – WoodChopper

+0

Нет проблем - добавлена ​​сводка кода, который у меня есть :) – user1058210

ответ

0
from __future__ import division 
import numpy as np 
import pylab as p 
from notebook import * 
from ipywidgets import * 
from ipywidgets import interactive 
%matplotlib inline 


def search(): 
    fig = p.figure(figsize=(10,5)) 

    p.subplot(121) 
    p.hist(np.random.rand((50))) 

    p.subplot(122) 
    p.hist(np.random.rand((50))) 
    p.show() 
    return HTML() # makes it flicker free 

interact_manual(search) 

выше будет работать для меня. Я перерисовываю весь график, но не просто обновляю данные, что можно сделать также: l,=p.plot(...), чтобы сделать график , затем l.set_ydata(...) внутри цикла обновления.

Смежные вопросы