2016-06-07 5 views
1

기본적으로 구성 가능한 숫자와 각 그림에 구성 가능한 하위 플롯 수를 작성하려고합니다. 그런 다음 1 분에 한 번씩 데이터를 검색하고 해당 플롯을 업데이트하십시오.여러 개의 (구성 가능한) 그림과 여러 개의 (구성 가능한) 하위 그림으로 구성된 Python 실시간 업데이트 플롯

plot.show()를 수행하면 플롯이 나타나고 다른 코드 줄을 실행하기 전에 그림이 닫힐 때까지 기다리는 것처럼 보입니다. 그래서 저는 잠시 기다렸다가 다시 옮겨달라고 말하면 안됩니다.

내가 fig.show()와 함께 간다면 너무 빨리 닫히고 닫힙니다.

그래서 저는 1 분 정도 열려있는 플로트 (구성도하고 싶습니다)와 업데이트가있는 곳에서 이것을 올바르게 수행하는 방법을 놓치고 있습니다. 그리고 구성 가능한 숫자의 그림과 하위 그림을 작성해야합니다.

나는 pyplot에서 일 해왔고 라인 개체의 2 차원 배열을 계속 정의하려고 노력했습니다. 그러나 내가 정말로하고 싶은 것은 매분마다 데이터를 리플 립하는 것이므로 잘못된 방식으로 진행할 것입니다. 내가 일하고 있어요 무슨 여기

있습니다 자세한 내용 :

1) 나는 zip 파일은 한 번에 실시간으로 업데이트되는 XML 데이터 (XML 데이터가 압축 파일에 추가되는 분 가득했다 그 날 2) 특정 XML 데이터를 찾고 sqlite DB에 새로운 데이터 만 쓰고 싶습니다 3) sqlite DB에서 데이터를 찾아서 그 플롯을 만드십시오. 4) 그림의 수는 구성 가능해야하며 (현재는 1 ~ 2 개이지만 이후에는 더 많을 것임) 각 그림의 하위 그림도 구성 할 수 있어야합니다. 5) 실시간으로 새 데이터를 찾고이를 다시 만들거나 애니메이션을 적용하십시오.

1 - 4가 완전히 완료되었으며 지정된 기간 동안 데이터를 플롯 할 수 있습니다. 단지 복제하지 마십시오.

희망이 이뤄졌습니다. 미리 감사드립니다.

답변

2

1 개의 스레드에서 2 개의 작업을 수행하려고 했으므로 설계가 멈췄습니다 : GUI를 표시하고 이에 대한 배경 데이터를 업데이트합니다. 파이썬의 GUI는 전체 스레드를 실행하여 프로그램이 멈추는 이유입니다.이 함수를 호출하면 "blocks"이 계속됩니다. 필요한 것은 프로그램을 업데이트 할 수 있도록 matplotlib의 "non-blocking"기능을 사용하는 것입니다. This similar Stack Overflow question은 논 블로킹 플롯의 개념을 사용하는 방법을 설명하는 여러 답을 제공합니다.

관련 문제