Начал изучать Python для создания графика сна для себя.
Оказалось что для моей задачи нужно освоить помимо matplotlib'а так же numpy, еще похоже pandas и возможно что-то из anaconda.
Я боюсь что освоение всех этих библиотек сейчас окажется для меня непосильной задачей. Выбрать нужную информацию для обучения - трудно, мне становится интересно все и я изучаю все подряд, так я не знаю когда сделаю график.
Пишу в надежде, что Вы мне подскажите на какие методы, функции или библиотеки стоит обратить внимание. Изучить внимательно их работу, что бы это помогло в решении моей задачи. Что бы я не изучал сейчас весь обучающий материал подряд, а сконцентрировался на нужных инструментах.
1. Операционная система: Windows 10pro 22h2
2. Версия Python 3.11
3. Список установленных библиотек полученный командой pip list:
Package Version
—————— ————
anaconda 0.0.1.1
certifi 2023.11.17
charset-normalizer 3.3.2
colorama 0.4.6
contourpy 1.2.0
cycler 0.12.1
data 0.4
decorator 5.1.1
fonttools 4.45.1
funcsigs 1.0.2
future 0.18.3
ghostscript 0.7
idna 3.6
ImageMagic 0.2.1
kiwisolver 1.4.5
latex 0.7.0
loguru 0.7.2
matplotlib 3.8.2
numpy 1.26.2
packaging 23.2
pandas 2.1.3
pi 0.1.2
Pillow 10.1.0
pip 21.3.1
pycairo 1.25.1
pyparsing 3.1.1
PyQt5 5.15.10
PyQt5-Qt5 5.15.2
PyQt5-sip 12.13.0
python-dateutil 2.8.2
pytz 2023.3.post1
requests 2.31.0
setuptools 60.2.0
shutilwhich 1.1.0
six 1.16.0
tempdir 0.7.1
tk 0.1.0
tornado 6.4
tzdata 2023.3
urllib3 2.1.0
wheel 0.37.1
win32-setctime 1.1.0
wxPython 4.2.1
WARNING: You are using pip version 21.3.1; however, version 23.3.1 is available.
4. Код на данный момент.
import numpy as np import matplotlib.pyplot as plt import pandas as pd # x = [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28] # ноябрь 2023г x = np.linspace(-1, 30, 32) y1 = [5, 5, 6, 7, 6, 7, 8, 8, 8, 6, 6, 10, 6, 10, 5, 9, 8, 9, 7, 9, 6, 7, 6, 9, 5, 8, 6, 6, 6, 6, 5, 6] # количество часов сна с 01.11.2023г по 16.11.2023г y2 = [5, 3, 5, 0, 8, 5, 4, 4, 4, 5, 5, 4, 3, 3, 0, 5, 2, 8, 5, 8, 6, 3, 5, 4, 4, 4, 2, 3, 3, 3, 0, 0] # шаги в километрах y3 = [-1, -1, -1, 0, 0, 1, 1, 0, 1, 1, 0, 2, -2, -1, 1, 1, 0, -1, 0, 1, -2, -2, -2, -2, -2, 0, 0, 0, 0, 1, -2, 0] # моё настроение 0 - норм, -1 - слабо, -2 - ужасно, 1 - хорошо, 2 - отлично # start = pd.Timestamp('2023-10-30') # end = pd.Timestamp('2023-12-31') # t = np.linspace(start.value, end.value, 63) # t = pd.to_datetime(t) plt.title("График СНА", fontsize=25, color='grey') plt.grid() plt.xlabel('Дата', fontsize=15, color='grey') plt.ylabel("Часов СНА", color='grey', fontsize=15) plt.plot(x, y1, "skyblue", x, y2,"coral", x, y3, "grey") plt.show()
Хочу сделать график отхода ко сну и подъёма (прикрепил изображение для понимания). Наложением на него кривых с другими показателями за день.
График сна:
По “y” время от 00:00 до 24:00. Отметки начала сна и подъёма, период сна залить цветным фоном.
По “x” календарные дни.
Наложение на этот график кривых:
- длительности сна.
- шагов в день.
- настроение/самочувствие в день.
- периодов приема препаратов и физиотерапий.
Я еще не знаю в каком конечном виде будет выглядеть график, поэтому пока что такой общий запрос к тому какая информация мне нужна для обучения.
Мне еще предстоит узнать как на нем отобразить все необходимые разные шкалы.
Можно ли сделать мультиграфик в котором будут отключаться и выключаться наложением кривые параметров за день.
Само обновляемый график. Который будет брать данные сам из текстового файла в который я буду их экспортировать.
Придумать удобный способ как предоставить легко и просто в наглядном виде этот график своему врачу не таская ноутбук с собой и что бы ему не пришлось устанавливать python с ide.
Как сделать просмотр многомесячного или годового графика в мелком масштабе. Сейчас научится делать его на один месяц для начала.
Любой ответ, даже самый не большой приму с благодарностью и внимательно изучу! Спасибо за внимание к теме!