Cześć, mam problem z aplikacją w Pythonie.

Piszę aplikację z wykorzystaniem PyQt i matplotlib. Za pomocą przycisku z poziomu okna nadrzędnego aplikacji odpalam funkcję która ma za zadanie wygenerować wykres. Wewnątrz funkcji znajduje się kod który definiuje wykres (sprawdzony i poprawny) i na końcu plt.show().

Po wywołaniu tej funkcji wszystko działa jak powinno do momentu pojawienia się okna z wykresem. Problem polega na tym że okno z wykresem jest całkowicie nieinteraktywne, nie da się go przesunąć, zminimalizować, zamknąć, nie mówiąc już o jakimkolwiek przesuwaniu czy przybliżaniu wykresu (przy czym okno aplikacji nadrzędnej dalej jest interaktywne). Dopiero jak zamknę okno aplikacji nadrzędnej to okno z wykresem "odżywa" i staje się interaktywne.
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@notrzeba: chat gpt nie pomogl?

Cześć! Wygląda na to, że masz do czynienia z problemem związanych z pętlą zdarzeń w aplikacji PyQt i matplotlib. Aby rozwiązać problem z niereagującym oknem z wykresem, możesz użyć jednej z dwóch technik:

1. Użycie matplotlib.pyplot.show(block=False): Zamiast plt.show(), możesz użyć plt.show(block=False), co pozwoli na kontynuowanie działania aplikacji i interakcję z innymi elementami. Pamiętaj, że w tym przypadku będziesz musiał odpowiednio zaktualizować pętlę zdarzeń PyQt, aby
  • Odpowiedz
#python #matplotlib #statystyka #pyqt #programowanie
Potrzebuję umieścić w PyQt wykres critical difference. Próbowałem wykorzystać do tego bibliotekę Orange, ale ona pozwala tylko na wyrysowanie wykresu, a nie mogę go umieścić w PyQt. Inne wykresy działają. Ktoś zmagał się z podobnym problemem?
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@F0rT3hW1n: Robiłem w ten sposób i rzeczywiście zwykłe wykresy działały, ale przy tym z Orange miałem problem. Nie pamiętam już dokładnie jaki, ale chyba było coś w rodzaju, że to co rysuję w Orange nie ma elementu canvas.
  • Odpowiedz
@dylo: prawdopodobnie wszystkie dane, które rysuje Orange znajdują się w obiekcie klasy, więc można je wyciągnąć a mając dane można je sobie wyrysować jak tylko chcesz
  • Odpowiedz
@psi-nos: OK MAM, żeby ustalać parametry dla osi jak się używa subplot trzeba wziąć osie tak (przykład):

axes = subplot(2,2,1)
i np.

axes.set_autoscalex_on(False)
  • Odpowiedz
hej pytanko do korzystających z #python oraz #matplotlib
W skrócie, bo jestem blady z pythona, mam plik csv i już wiem jak wrzucić do tablicy dane z tego pliku i interesujących mnie kolumn. Jednak nie wiem jak:
1. Każdy element w tablicy podzielić?
2. Zrobić graf z dwoma liniami danych, wykorzystaniem jednej z kolumn (daty) jako osi Y i utorzonej przez siebie osi X

Dziękuje bardzo za pomoc
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Czy ktoś wstawiał linie o określonym kształcie "między" punkty tak aby jak najbardziej wpasować linie w punkty (zdjęcie poniżej) i później z tego określił pole powierzchni między linia zbudowaną na punktach a tą która określoną która wstawiamy?
Za każdą poradę, artykuł będę wdzięczny

#naukaprogramowania #matplotlib #python #programowanie #datascience #analizadanych
mozeskomentuje - Czy ktoś wstawiał linie o określonym kształcie "między" punkty tak a...

źródło: comment_h2ZLA3oFnBhy4IiDT96JK0t47cwCGNXz.jpg

Pobierz
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mozeskomentuje: Uogólnione modele liniowe powinny załatwić sprawę. Można też wykonać dopasowanie oparte np. na metodzie największej wiarygodności i skorzystać z kryterium informacyjnego (Bayesa-Schwartza albo Akaikego). Pole powierzchni powinna załatwić różnica dwóch pól powierzchni między prostą (krzywą) wpasowaną, a osią odciętych.
Po co Ci to w ogóle potrzebne? Dopasowujesz rozkład?
  • Odpowiedz