feat: updating data and code
This commit is contained in:
parent
6f4c89a756
commit
911c61c00a
30
.idea/inspectionProfiles/Project_Default.xml
Normal file
30
.idea/inspectionProfiles/Project_Default.xml
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
<component name="InspectionProjectProfileManager">
|
||||||
|
<profile version="1.0">
|
||||||
|
<option name="myName" value="Project Default" />
|
||||||
|
<inspection_tool class="PyCompatibilityInspection" enabled="true" level="WARNING" enabled_by_default="true">
|
||||||
|
<option name="ourVersions">
|
||||||
|
<value>
|
||||||
|
<list size="2">
|
||||||
|
<item index="0" class="java.lang.String" itemvalue="3.10" />
|
||||||
|
<item index="1" class="java.lang.String" itemvalue="3.9" />
|
||||||
|
</list>
|
||||||
|
</value>
|
||||||
|
</option>
|
||||||
|
</inspection_tool>
|
||||||
|
<inspection_tool class="PyPep8Inspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
|
||||||
|
<option name="ignoredErrors">
|
||||||
|
<list>
|
||||||
|
<option value="E111" />
|
||||||
|
</list>
|
||||||
|
</option>
|
||||||
|
</inspection_tool>
|
||||||
|
<inspection_tool class="PyUnresolvedReferencesInspection" enabled="true" level="WARNING" enabled_by_default="true">
|
||||||
|
<option name="ignoredIdentifiers">
|
||||||
|
<list>
|
||||||
|
<option value="list.__getitem__" />
|
||||||
|
<option value="hub.catalog_factories.data_models.cost.capital_cost.CapitalCost.__getitem__" />
|
||||||
|
</list>
|
||||||
|
</option>
|
||||||
|
</inspection_tool>
|
||||||
|
</profile>
|
||||||
|
</component>
|
6
.idea/inspectionProfiles/profiles_settings.xml
Normal file
6
.idea/inspectionProfiles/profiles_settings.xml
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
<component name="InspectionProjectProfileManager">
|
||||||
|
<settings>
|
||||||
|
<option name="USE_PROJECT_PROFILE" value="false" />
|
||||||
|
<version value="1.0" />
|
||||||
|
</settings>
|
||||||
|
</component>
|
4
.idea/misc.xml
Normal file
4
.idea/misc.xml
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.10" project-jdk-type="Python SDK" />
|
||||||
|
</project>
|
6
.idea/vcs.xml
Normal file
6
.idea/vcs.xml
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="" vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
217
.idea/workspace.xml
Normal file
217
.idea/workspace.xml
Normal file
|
@ -0,0 +1,217 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="AutoImportSettings">
|
||||||
|
<option name="autoReloadType" value="SELECTIVE" />
|
||||||
|
</component>
|
||||||
|
<component name="ChangeListManager">
|
||||||
|
<list default="true" id="cbcaba17-0c3f-4a51-922a-b8f43230a2de" name="Changes" comment="">
|
||||||
|
<change beforePath="$PROJECT_DIR$/06-25_07-07.csv" beforeDir="false" afterPath="$PROJECT_DIR$/06-25_07-07.csv" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/daily_plots.py" beforeDir="false" afterPath="$PROJECT_DIR$/daily_plots.py" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/double_y.py" beforeDir="false" afterPath="$PROJECT_DIR$/double_y.py" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/double_y_daily.py" beforeDir="false" afterPath="$PROJECT_DIR$/double_y_daily.py" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/main.py" beforeDir="false" afterPath="$PROJECT_DIR$/main.py" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/q_calculation.py" beforeDir="false" afterPath="$PROJECT_DIR$/q_calculation.py" afterDir="false" />
|
||||||
|
</list>
|
||||||
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
|
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||||
|
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||||
|
</component>
|
||||||
|
<component name="FileTemplateManagerImpl">
|
||||||
|
<option name="RECENT_TEMPLATES">
|
||||||
|
<list>
|
||||||
|
<option value="Python Script" />
|
||||||
|
</list>
|
||||||
|
</option>
|
||||||
|
</component>
|
||||||
|
<component name="Git.Settings">
|
||||||
|
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
||||||
|
</component>
|
||||||
|
<component name="ProjectColorInfo">{
|
||||||
|
"associatedIndex": 6
|
||||||
|
}</component>
|
||||||
|
<component name="ProjectId" id="2ivCK1nyVSOdtcPAWVfcjcoZlp8" />
|
||||||
|
<component name="ProjectViewState">
|
||||||
|
<option name="hideEmptyMiddlePackages" value="true" />
|
||||||
|
<option name="showLibraryContents" value="true" />
|
||||||
|
</component>
|
||||||
|
<component name="PropertiesComponent">{
|
||||||
|
"keyToString": {
|
||||||
|
"RunOnceActivity.OpenProjectViewOnStart": "true",
|
||||||
|
"RunOnceActivity.ShowReadmeOnStart": "true",
|
||||||
|
"WebServerToolWindowFactoryState": "false",
|
||||||
|
"last_opened_file_path": "C:/Users/umroot/PycharmProjects/coniston",
|
||||||
|
"node.js.detected.package.eslint": "true",
|
||||||
|
"node.js.detected.package.tslint": "true",
|
||||||
|
"node.js.selected.package.eslint": "(autodetect)",
|
||||||
|
"node.js.selected.package.tslint": "(autodetect)",
|
||||||
|
"settings.editor.selected.configurable": "com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable",
|
||||||
|
"vue.rearranger.settings.migration": "true"
|
||||||
|
}
|
||||||
|
}</component>
|
||||||
|
<component name="RecentsManager">
|
||||||
|
<key name="CopyFile.RECENT_KEYS">
|
||||||
|
<recent name="C:\Users\umroot\PycharmProjects\coniston" />
|
||||||
|
</key>
|
||||||
|
<key name="MoveFile.RECENT_KEYS">
|
||||||
|
<recent name="C:\Users\umroot\PycharmProjects\coniston\Results\daily_without_q" />
|
||||||
|
<recent name="C:\Users\umroot\PycharmProjects\coniston\Results\daily_with_q" />
|
||||||
|
<recent name="C:\Users\umroot\PycharmProjects\coniston\Results" />
|
||||||
|
</key>
|
||||||
|
</component>
|
||||||
|
<component name="RunManager" selected="Python.q_calculation">
|
||||||
|
<configuration name="daily_plots" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
|
||||||
|
<module name="coniston" />
|
||||||
|
<option name="INTERPRETER_OPTIONS" value="" />
|
||||||
|
<option name="PARENT_ENVS" value="true" />
|
||||||
|
<envs>
|
||||||
|
<env name="PYTHONUNBUFFERED" value="1" />
|
||||||
|
</envs>
|
||||||
|
<option name="SDK_HOME" value="" />
|
||||||
|
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
|
||||||
|
<option name="IS_MODULE_SDK" value="true" />
|
||||||
|
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||||
|
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||||
|
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
|
||||||
|
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/daily_plots.py" />
|
||||||
|
<option name="PARAMETERS" value="" />
|
||||||
|
<option name="SHOW_COMMAND_LINE" value="false" />
|
||||||
|
<option name="EMULATE_TERMINAL" value="false" />
|
||||||
|
<option name="MODULE_MODE" value="false" />
|
||||||
|
<option name="REDIRECT_INPUT" value="false" />
|
||||||
|
<option name="INPUT_FILE" value="" />
|
||||||
|
<method v="2" />
|
||||||
|
</configuration>
|
||||||
|
<configuration name="double_y" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
|
||||||
|
<module name="coniston" />
|
||||||
|
<option name="INTERPRETER_OPTIONS" value="" />
|
||||||
|
<option name="PARENT_ENVS" value="true" />
|
||||||
|
<envs>
|
||||||
|
<env name="PYTHONUNBUFFERED" value="1" />
|
||||||
|
</envs>
|
||||||
|
<option name="SDK_HOME" value="" />
|
||||||
|
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
|
||||||
|
<option name="IS_MODULE_SDK" value="true" />
|
||||||
|
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||||
|
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||||
|
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
|
||||||
|
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/double_y.py" />
|
||||||
|
<option name="PARAMETERS" value="" />
|
||||||
|
<option name="SHOW_COMMAND_LINE" value="false" />
|
||||||
|
<option name="EMULATE_TERMINAL" value="false" />
|
||||||
|
<option name="MODULE_MODE" value="false" />
|
||||||
|
<option name="REDIRECT_INPUT" value="false" />
|
||||||
|
<option name="INPUT_FILE" value="" />
|
||||||
|
<method v="2" />
|
||||||
|
</configuration>
|
||||||
|
<configuration name="double_y_daily" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
|
||||||
|
<module name="coniston" />
|
||||||
|
<option name="INTERPRETER_OPTIONS" value="" />
|
||||||
|
<option name="PARENT_ENVS" value="true" />
|
||||||
|
<envs>
|
||||||
|
<env name="PYTHONUNBUFFERED" value="1" />
|
||||||
|
</envs>
|
||||||
|
<option name="SDK_HOME" value="" />
|
||||||
|
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
|
||||||
|
<option name="IS_MODULE_SDK" value="true" />
|
||||||
|
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||||
|
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||||
|
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
|
||||||
|
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/double_y_daily.py" />
|
||||||
|
<option name="PARAMETERS" value="" />
|
||||||
|
<option name="SHOW_COMMAND_LINE" value="false" />
|
||||||
|
<option name="EMULATE_TERMINAL" value="false" />
|
||||||
|
<option name="MODULE_MODE" value="false" />
|
||||||
|
<option name="REDIRECT_INPUT" value="false" />
|
||||||
|
<option name="INPUT_FILE" value="" />
|
||||||
|
<method v="2" />
|
||||||
|
</configuration>
|
||||||
|
<configuration name="main" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
|
||||||
|
<module name="coniston" />
|
||||||
|
<option name="INTERPRETER_OPTIONS" value="" />
|
||||||
|
<option name="PARENT_ENVS" value="true" />
|
||||||
|
<envs>
|
||||||
|
<env name="PYTHONUNBUFFERED" value="1" />
|
||||||
|
</envs>
|
||||||
|
<option name="SDK_HOME" value="" />
|
||||||
|
<option name="SDK_NAME" value="Python 3.10" />
|
||||||
|
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
|
||||||
|
<option name="IS_MODULE_SDK" value="false" />
|
||||||
|
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||||
|
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||||
|
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
|
||||||
|
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/main.py" />
|
||||||
|
<option name="PARAMETERS" value="" />
|
||||||
|
<option name="SHOW_COMMAND_LINE" value="false" />
|
||||||
|
<option name="EMULATE_TERMINAL" value="false" />
|
||||||
|
<option name="MODULE_MODE" value="false" />
|
||||||
|
<option name="REDIRECT_INPUT" value="false" />
|
||||||
|
<option name="INPUT_FILE" value="" />
|
||||||
|
<method v="2" />
|
||||||
|
</configuration>
|
||||||
|
<configuration name="q_calculation" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
|
||||||
|
<module name="coniston" />
|
||||||
|
<option name="INTERPRETER_OPTIONS" value="" />
|
||||||
|
<option name="PARENT_ENVS" value="true" />
|
||||||
|
<envs>
|
||||||
|
<env name="PYTHONUNBUFFERED" value="1" />
|
||||||
|
</envs>
|
||||||
|
<option name="SDK_HOME" value="" />
|
||||||
|
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
|
||||||
|
<option name="IS_MODULE_SDK" value="true" />
|
||||||
|
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||||
|
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||||
|
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
|
||||||
|
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/q_calculation.py" />
|
||||||
|
<option name="PARAMETERS" value="" />
|
||||||
|
<option name="SHOW_COMMAND_LINE" value="false" />
|
||||||
|
<option name="EMULATE_TERMINAL" value="false" />
|
||||||
|
<option name="MODULE_MODE" value="false" />
|
||||||
|
<option name="REDIRECT_INPUT" value="false" />
|
||||||
|
<option name="INPUT_FILE" value="" />
|
||||||
|
<method v="2" />
|
||||||
|
</configuration>
|
||||||
|
<list>
|
||||||
|
<item itemvalue="Python.daily_plots" />
|
||||||
|
<item itemvalue="Python.double_y" />
|
||||||
|
<item itemvalue="Python.double_y_daily" />
|
||||||
|
<item itemvalue="Python.main" />
|
||||||
|
<item itemvalue="Python.q_calculation" />
|
||||||
|
</list>
|
||||||
|
<recent_temporary>
|
||||||
|
<list>
|
||||||
|
<item itemvalue="Python.q_calculation" />
|
||||||
|
<item itemvalue="Python.double_y_daily" />
|
||||||
|
<item itemvalue="Python.double_y" />
|
||||||
|
<item itemvalue="Python.daily_plots" />
|
||||||
|
<item itemvalue="Python.main" />
|
||||||
|
</list>
|
||||||
|
</recent_temporary>
|
||||||
|
</component>
|
||||||
|
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
|
||||||
|
<component name="TaskManager">
|
||||||
|
<task active="true" id="Default" summary="Default task">
|
||||||
|
<changelist id="cbcaba17-0c3f-4a51-922a-b8f43230a2de" name="Changes" comment="" />
|
||||||
|
<created>1720361595188</created>
|
||||||
|
<option name="number" value="Default" />
|
||||||
|
<option name="presentableId" value="Default" />
|
||||||
|
<updated>1720361595188</updated>
|
||||||
|
<workItem from="1720361596557" duration="3109000" />
|
||||||
|
<workItem from="1720365722622" duration="6392000" />
|
||||||
|
<workItem from="1720392697194" duration="308000" />
|
||||||
|
<workItem from="1720393018556" duration="1214000" />
|
||||||
|
<workItem from="1720445287607" duration="4414000" />
|
||||||
|
</task>
|
||||||
|
<servers />
|
||||||
|
</component>
|
||||||
|
<component name="TypeScriptGeneratedFilesManager">
|
||||||
|
<option name="version" value="3" />
|
||||||
|
</component>
|
||||||
|
<component name="com.intellij.coverage.CoverageDataManagerImpl">
|
||||||
|
<SUITE FILE_PATH="coverage/coniston$q_calculation.coverage" NAME="q_calculation Coverage Results" MODIFIED="1720450086726" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
|
||||||
|
<SUITE FILE_PATH="coverage/coniston$daily_plots.coverage" NAME="daily_plots Coverage Results" MODIFIED="1720448816558" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
|
||||||
|
<SUITE FILE_PATH="coverage/coniston$main.coverage" NAME="main Coverage Results" MODIFIED="1720448683526" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
|
||||||
|
<SUITE FILE_PATH="coverage/coniston$double_y.coverage" NAME="double_y Coverage Results" MODIFIED="1720449672911" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
|
||||||
|
<SUITE FILE_PATH="coverage/coniston$double_y_daily.coverage" NAME="double_y_daily Coverage Results" MODIFIED="1720449760978" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="coverage.py" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" />
|
||||||
|
</component>
|
||||||
|
</project>
|
303
06-25_07-07.csv
303
06-25_07-07.csv
|
@ -3434,3 +3434,306 @@ Date/Time (UTC),Date/Time (--4:0:0),Sewer Water In,Sewer Water Out,Return Air,Su
|
||||||
7/7/2024 11:42,7/7/2024 7:42,63.66987,63.713048,70.103429,70.103429
|
7/7/2024 11:42,7/7/2024 7:42,63.66987,63.713048,70.103429,70.103429
|
||||||
7/7/2024 11:47,7/7/2024 7:47,63.626692,64.015296,69.973894,70.31932
|
7/7/2024 11:47,7/7/2024 7:47,63.626692,64.015296,69.973894,70.31932
|
||||||
7/7/2024 11:52,7/7/2024 7:52,63.713048,64.360722,70.103429,69.973894
|
7/7/2024 11:52,7/7/2024 7:52,63.713048,64.360722,70.103429,69.973894
|
||||||
|
7/7/2024 11:54,7/7/2024 7:54,63.410801,64.490257,70.017072,69.930716
|
||||||
|
7/7/2024 11:59,7/7/2024 7:59,63.540335,64.058474,70.146607,70.017072
|
||||||
|
7/7/2024 12:04,7/7/2024 8:04,63.453979,64.274366,70.189785,69.973894
|
||||||
|
7/7/2024 12:09,7/7/2024 8:09,63.799405,64.619792,69.930716,70.017072
|
||||||
|
7/7/2024 12:14,7/7/2024 8:14,63.626692,64.188009,70.146607,69.973894
|
||||||
|
7/7/2024 12:19,7/7/2024 8:19,64.015296,64.274366,70.103429,70.017072
|
||||||
|
7/7/2024 12:24,7/7/2024 8:24,63.842583,64.4039,70.017072,70.146607
|
||||||
|
7/7/2024 12:29,7/7/2024 8:29,64.058474,64.447079,69.973894,70.103429
|
||||||
|
7/7/2024 12:34,7/7/2024 8:34,64.101653,65.051574,70.017072,69.930716
|
||||||
|
7/7/2024 12:39,7/7/2024 8:39,64.360722,64.749326,69.973894,69.887538
|
||||||
|
7/7/2024 12:44,7/7/2024 8:44,64.231187,64.619792,69.930716,69.844359
|
||||||
|
7/7/2024 12:49,7/7/2024 8:49,64.231187,64.835683,69.973894,69.844359
|
||||||
|
7/7/2024 12:54,7/7/2024 8:54,64.4039,64.965218,69.887538,69.844359
|
||||||
|
7/7/2024 12:59,7/7/2024 8:59,64.619792,64.922039,70.060251,70.146607
|
||||||
|
7/7/2024 13:04,7/7/2024 9:04,64.792505,64.965218,70.146607,70.146607
|
||||||
|
7/7/2024 13:09,7/7/2024 9:09,64.878861,65.181109,70.017072,70.017072
|
||||||
|
7/7/2024 13:14,7/7/2024 9:14,65.008396,65.224287,69.930716,70.146607
|
||||||
|
7/7/2024 13:19,7/7/2024 9:19,64.835683,65.310643,69.930716,70.017072
|
||||||
|
7/7/2024 13:24,7/7/2024 9:24,65.181109,64.835683,69.973894,69.844359
|
||||||
|
7/7/2024 13:29,7/7/2024 9:29,65.051574,65.181109,70.146607,70.017072
|
||||||
|
7/7/2024 13:34,7/7/2024 9:34,65.051574,65.526535,70.146607,70.189785
|
||||||
|
7/7/2024 13:39,7/7/2024 9:39,64.965218,65.397,70.060251,70.189785
|
||||||
|
7/7/2024 13:44,7/7/2024 9:44,65.008396,65.353822,69.973894,70.103429
|
||||||
|
7/7/2024 13:49,7/7/2024 9:49,64.835683,65.181109,70.017072,70.103429
|
||||||
|
7/7/2024 13:54,7/7/2024 9:54,64.878861,65.353822,70.060251,70.103429
|
||||||
|
7/7/2024 13:59,7/7/2024 9:59,64.749326,64.835683,70.31932,70.448855
|
||||||
|
7/7/2024 14:04,7/7/2024 10:04,64.835683,64.878861,70.060251,70.232964
|
||||||
|
7/7/2024 14:09,7/7/2024 10:09,65.051574,65.051574,70.405677,70.448855
|
||||||
|
7/7/2024 14:14,7/7/2024 10:14,65.051574,64.965218,70.492033,70.448855
|
||||||
|
7/7/2024 14:19,7/7/2024 10:19,64.922039,65.051574,70.276142,70.448855
|
||||||
|
7/7/2024 14:24,7/7/2024 10:24,64.922039,64.922039,70.448855,70.535211
|
||||||
|
7/7/2024 14:29,7/7/2024 10:29,64.965218,64.922039,70.492033,70.362498
|
||||||
|
7/7/2024 14:34,7/7/2024 10:34,65.008396,64.835683,70.31932,70.362498
|
||||||
|
7/7/2024 14:39,7/7/2024 10:39,65.051574,65.181109,70.492033,70.448855
|
||||||
|
7/7/2024 14:44,7/7/2024 10:44,64.706148,65.526535,70.535211,70.448855
|
||||||
|
7/7/2024 14:49,7/7/2024 10:49,64.922039,65.181109,70.189785,70.492033
|
||||||
|
7/7/2024 14:54,7/7/2024 10:54,65.008396,65.051574,70.448855,70.664746
|
||||||
|
7/7/2024 14:59,7/7/2024 10:59,65.008396,65.137931,70.492033,70.621568
|
||||||
|
7/7/2024 15:04,7/7/2024 11:04,64.965218,65.224287,70.535211,70.621568
|
||||||
|
7/7/2024 15:09,7/7/2024 11:09,65.008396,65.397,70.492033,70.837459
|
||||||
|
7/7/2024 15:14,7/7/2024 11:14,65.137931,65.828782,70.448855,70.492033
|
||||||
|
7/7/2024 15:19,7/7/2024 11:19,65.094752,65.483356,70.362498,70.621568
|
||||||
|
7/7/2024 15:24,7/7/2024 11:24,65.137931,65.267465,70.405677,70.535211
|
||||||
|
7/7/2024 15:29,7/7/2024 11:29,64.965218,65.310643,70.448855,70.57839
|
||||||
|
7/7/2024 15:34,7/7/2024 11:34,65.051574,65.094752,70.405677,70.621568
|
||||||
|
7/7/2024 15:39,7/7/2024 11:39,64.922039,65.656069,70.31932,70.448855
|
||||||
|
7/7/2024 15:44,7/7/2024 11:44,65.051574,65.224287,70.405677,70.621568
|
||||||
|
7/7/2024 15:49,7/7/2024 11:49,65.094752,65.699248,70.362498,70.664746
|
||||||
|
7/7/2024 15:54,7/7/2024 11:54,65.094752,65.397,70.448855,70.57839
|
||||||
|
7/7/2024 15:59,7/7/2024 11:59,64.965218,65.051574,70.405677,70.535211
|
||||||
|
7/7/2024 16:04,7/7/2024 12:04,65.008396,65.353822,70.492033,70.535211
|
||||||
|
7/7/2024 16:09,7/7/2024 12:09,64.965218,65.871961,70.448855,70.621568
|
||||||
|
7/7/2024 16:14,7/7/2024 12:14,64.922039,65.440178,70.448855,70.621568
|
||||||
|
7/7/2024 16:19,7/7/2024 12:19,64.878861,65.267465,70.492033,70.535211
|
||||||
|
7/7/2024 16:24,7/7/2024 12:24,64.878861,65.181109,70.405677,70.57839
|
||||||
|
7/7/2024 16:29,7/7/2024 12:29,65.094752,65.181109,70.448855,70.751102
|
||||||
|
7/7/2024 16:34,7/7/2024 12:34,65.094752,65.310643,70.405677,70.57839
|
||||||
|
7/7/2024 16:39,7/7/2024 12:39,65.137931,65.569713,70.405677,70.664746
|
||||||
|
7/7/2024 16:44,7/7/2024 12:44,65.267465,65.569713,70.57839,70.492033
|
||||||
|
7/7/2024 16:49,7/7/2024 12:49,65.483356,65.915139,70.621568,70.621568
|
||||||
|
7/7/2024 16:54,7/7/2024 12:54,65.526535,65.785604,70.621568,70.794281
|
||||||
|
7/7/2024 16:59,7/7/2024 12:59,65.656069,65.483356,70.621568,70.966994
|
||||||
|
7/7/2024 17:04,7/7/2024 13:04,65.440178,65.612891,70.535211,70.664746
|
||||||
|
7/7/2024 17:09,7/7/2024 13:09,65.353822,65.526535,70.621568,70.837459
|
||||||
|
7/7/2024 17:14,7/7/2024 13:14,65.397,65.828782,70.535211,70.664746
|
||||||
|
7/7/2024 17:19,7/7/2024 13:19,65.353822,65.612891,70.535211,70.751102
|
||||||
|
7/7/2024 17:24,7/7/2024 13:24,65.181109,65.440178,70.621568,70.837459
|
||||||
|
7/7/2024 17:29,7/7/2024 13:29,65.137931,65.008396,70.751102,70.837459
|
||||||
|
7/7/2024 17:34,7/7/2024 13:34,65.008396,65.612891,70.621568,70.880637
|
||||||
|
7/7/2024 17:39,7/7/2024 13:39,65.094752,65.483356,70.57839,70.880637
|
||||||
|
7/7/2024 17:44,7/7/2024 13:44,65.137931,65.181109,70.880637,71.010172
|
||||||
|
7/7/2024 17:49,7/7/2024 13:49,65.008396,65.353822,70.535211,70.880637
|
||||||
|
7/7/2024 17:54,7/7/2024 13:54,65.051574,65.267465,70.751102,70.837459
|
||||||
|
7/7/2024 17:59,7/7/2024 13:59,64.792505,65.397,70.837459,71.010172
|
||||||
|
7/7/2024 18:04,7/7/2024 14:04,64.965218,65.569713,70.621568,70.880637
|
||||||
|
7/7/2024 18:09,7/7/2024 14:09,65.051574,64.792505,70.794281,71.182885
|
||||||
|
7/7/2024 18:14,7/7/2024 14:14,64.619792,65.181109,70.707924,70.880637
|
||||||
|
7/7/2024 18:19,7/7/2024 14:19,64.922039,65.051574,70.794281,71.096528
|
||||||
|
7/7/2024 18:24,7/7/2024 14:24,64.66297,65.224287,70.880637,71.182885
|
||||||
|
7/7/2024 18:29,7/7/2024 14:29,64.619792,65.267465,70.751102,70.966994
|
||||||
|
7/7/2024 18:34,7/7/2024 14:34,64.706148,65.008396,70.837459,70.837459
|
||||||
|
7/7/2024 18:39,7/7/2024 14:39,64.706148,64.878861,70.751102,70.880637
|
||||||
|
7/7/2024 18:44,7/7/2024 14:44,64.533435,64.922039,70.794281,70.707924
|
||||||
|
7/7/2024 18:49,7/7/2024 14:49,64.533435,65.094752,70.880637,70.880637
|
||||||
|
7/7/2024 18:54,7/7/2024 14:54,64.490257,64.878861,70.664746,70.966994
|
||||||
|
7/7/2024 18:59,7/7/2024 14:59,64.490257,65.051574,70.923815,70.880637
|
||||||
|
7/7/2024 19:04,7/7/2024 15:04,64.533435,65.267465,70.880637,70.923815
|
||||||
|
7/7/2024 19:09,7/7/2024 15:09,64.447079,64.965218,70.837459,71.010172
|
||||||
|
7/7/2024 19:14,7/7/2024 15:14,64.490257,64.66297,70.880637,71.010172
|
||||||
|
7/7/2024 19:19,7/7/2024 15:19,64.533435,64.66297,70.751102,71.096528
|
||||||
|
7/7/2024 19:24,7/7/2024 15:24,64.4039,65.008396,71.010172,71.31242
|
||||||
|
7/7/2024 19:29,7/7/2024 15:29,64.576613,64.706148,70.966994,71.096528
|
||||||
|
7/7/2024 19:34,7/7/2024 15:34,64.447079,65.267465,70.923815,71.182885
|
||||||
|
7/7/2024 19:39,7/7/2024 15:39,64.360722,65.397,71.096528,71.096528
|
||||||
|
7/7/2024 19:44,7/7/2024 15:44,64.360722,64.965218,70.923815,71.139707
|
||||||
|
7/7/2024 19:49,7/7/2024 15:49,64.360722,64.792505,70.880637,71.05335
|
||||||
|
7/7/2024 19:54,7/7/2024 15:54,64.490257,64.619792,70.880637,71.010172
|
||||||
|
7/7/2024 19:59,7/7/2024 15:59,64.447079,65.137931,70.923815,71.096528
|
||||||
|
7/7/2024 20:04,7/7/2024 16:04,64.490257,65.008396,70.751102,71.182885
|
||||||
|
7/7/2024 20:09,7/7/2024 16:09,64.4039,64.4039,70.837459,71.096528
|
||||||
|
7/7/2024 20:14,7/7/2024 16:14,64.360722,64.706148,71.096528,71.269241
|
||||||
|
7/7/2024 20:19,7/7/2024 16:19,64.490257,64.965218,70.966994,71.139707
|
||||||
|
7/7/2024 20:24,7/7/2024 16:24,64.447079,64.619792,70.966994,71.269241
|
||||||
|
7/7/2024 20:29,7/7/2024 16:29,64.360722,64.965218,71.05335,71.139707
|
||||||
|
7/7/2024 20:34,7/7/2024 16:34,64.360722,64.447079,70.880637,71.226063
|
||||||
|
7/7/2024 20:39,7/7/2024 16:39,64.360722,64.749326,71.010172,71.05335
|
||||||
|
7/7/2024 20:44,7/7/2024 16:44,64.490257,64.878861,70.923815,71.182885
|
||||||
|
7/7/2024 20:49,7/7/2024 16:49,64.231187,64.965218,71.010172,71.139707
|
||||||
|
7/7/2024 20:54,7/7/2024 16:54,64.144831,64.792505,71.010172,71.31242
|
||||||
|
7/7/2024 20:59,7/7/2024 16:59,64.447079,64.490257,70.837459,71.182885
|
||||||
|
7/7/2024 21:04,7/7/2024 17:04,64.490257,65.094752,71.010172,71.096528
|
||||||
|
7/7/2024 21:09,7/7/2024 17:09,64.4039,65.008396,71.010172,71.139707
|
||||||
|
7/7/2024 21:14,7/7/2024 17:14,64.66297,64.835683,71.05335,71.441954
|
||||||
|
7/7/2024 21:19,7/7/2024 17:19,64.490257,65.094752,71.139707,71.269241
|
||||||
|
7/7/2024 21:24,7/7/2024 17:24,64.274366,64.965218,70.966994,71.226063
|
||||||
|
7/7/2024 21:29,7/7/2024 17:29,64.490257,64.533435,71.010172,71.139707
|
||||||
|
7/7/2024 21:34,7/7/2024 17:34,64.447079,65.094752,71.010172,71.269241
|
||||||
|
7/7/2024 21:39,7/7/2024 17:39,64.4039,65.181109,70.923815,71.182885
|
||||||
|
7/7/2024 21:44,7/7/2024 17:44,64.533435,65.224287,71.182885,71.226063
|
||||||
|
7/7/2024 21:49,7/7/2024 17:49,64.66297,65.094752,70.880637,71.139707
|
||||||
|
7/7/2024 21:54,7/7/2024 17:54,64.490257,64.878861,71.05335,71.269241
|
||||||
|
7/7/2024 21:59,7/7/2024 17:59,64.66297,65.051574,70.966994,71.182885
|
||||||
|
7/7/2024 22:04,7/7/2024 18:04,64.706148,65.137931,70.923815,71.096528
|
||||||
|
7/7/2024 22:09,7/7/2024 18:09,64.576613,64.792505,70.837459,71.096528
|
||||||
|
7/7/2024 22:14,7/7/2024 18:14,64.66297,65.483356,70.880637,71.139707
|
||||||
|
7/7/2024 22:19,7/7/2024 18:19,64.533435,65.008396,71.31242,71.355598
|
||||||
|
7/7/2024 22:24,7/7/2024 18:24,64.533435,65.094752,71.096528,71.355598
|
||||||
|
7/7/2024 22:29,7/7/2024 18:29,64.490257,65.181109,70.880637,71.096528
|
||||||
|
7/7/2024 22:34,7/7/2024 18:34,64.447079,65.051574,70.837459,71.139707
|
||||||
|
7/7/2024 22:39,7/7/2024 18:39,64.533435,65.094752,70.923815,71.226063
|
||||||
|
7/7/2024 22:44,7/7/2024 18:44,64.533435,64.965218,70.966994,71.182885
|
||||||
|
7/7/2024 22:49,7/7/2024 18:49,64.4039,64.792505,71.05335,71.139707
|
||||||
|
7/7/2024 22:54,7/7/2024 18:54,64.835683,64.749326,70.966994,71.226063
|
||||||
|
7/7/2024 22:59,7/7/2024 18:59,64.360722,64.965218,71.096528,71.657846
|
||||||
|
7/7/2024 23:04,7/7/2024 19:04,64.360722,64.922039,71.182885,71.614667
|
||||||
|
7/7/2024 23:09,7/7/2024 19:09,64.4039,65.267465,71.096528,71.05335
|
||||||
|
7/7/2024 23:14,7/7/2024 19:14,64.576613,64.965218,71.010172,71.139707
|
||||||
|
7/7/2024 23:19,7/7/2024 19:19,64.490257,64.922039,70.923815,71.139707
|
||||||
|
7/7/2024 23:24,7/7/2024 19:24,64.576613,65.094752,71.010172,71.182885
|
||||||
|
7/7/2024 23:29,7/7/2024 19:29,64.792505,65.051574,70.923815,71.269241
|
||||||
|
7/7/2024 23:34,7/7/2024 19:34,65.008396,65.008396,70.794281,71.139707
|
||||||
|
7/7/2024 23:39,7/7/2024 19:39,64.835683,65.181109,71.010172,71.139707
|
||||||
|
7/7/2024 23:44,7/7/2024 19:44,64.965218,65.137931,71.226063,71.441954
|
||||||
|
7/7/2024 23:49,7/7/2024 19:49,65.008396,65.224287,70.966994,71.05335
|
||||||
|
7/7/2024 23:54,7/7/2024 19:54,64.835683,65.094752,71.096528,71.31242
|
||||||
|
7/7/2024 23:59,7/7/2024 19:59,65.094752,65.569713,71.05335,71.355598
|
||||||
|
7/8/2024 0:04,7/7/2024 20:04,65.051574,65.353822,71.05335,71.269241
|
||||||
|
7/8/2024 0:09,7/7/2024 20:09,65.267465,65.569713,71.05335,71.441954
|
||||||
|
7/8/2024 0:14,7/7/2024 20:14,65.008396,65.267465,71.139707,71.096528
|
||||||
|
7/8/2024 0:19,7/7/2024 20:19,65.051574,65.526535,71.182885,71.269241
|
||||||
|
7/8/2024 0:24,7/7/2024 20:24,65.137931,65.267465,71.139707,71.139707
|
||||||
|
7/8/2024 0:29,7/7/2024 20:29,65.137931,65.656069,71.139707,71.441954
|
||||||
|
7/8/2024 0:34,7/7/2024 20:34,65.224287,65.699248,71.05335,71.226063
|
||||||
|
7/8/2024 0:39,7/7/2024 20:39,65.267465,65.569713,71.010172,71.269241
|
||||||
|
7/8/2024 0:44,7/7/2024 20:44,65.008396,65.526535,71.010172,71.096528
|
||||||
|
7/8/2024 0:49,7/7/2024 20:49,65.224287,65.742426,70.923815,71.226063
|
||||||
|
7/8/2024 0:54,7/7/2024 20:54,65.267465,65.397,70.880637,71.096528
|
||||||
|
7/8/2024 0:59,7/7/2024 20:59,65.224287,65.526535,71.139707,71.05335
|
||||||
|
7/8/2024 1:04,7/7/2024 21:04,65.440178,65.656069,71.05335,71.05335
|
||||||
|
7/8/2024 1:09,7/7/2024 21:09,65.612891,65.612891,70.923815,71.05335
|
||||||
|
7/8/2024 1:14,7/7/2024 21:14,65.008396,65.569713,71.010172,71.05335
|
||||||
|
7/8/2024 1:19,7/7/2024 21:19,65.569713,65.483356,70.966994,71.05335
|
||||||
|
7/8/2024 1:24,7/7/2024 21:24,65.397,65.742426,70.880637,71.139707
|
||||||
|
7/8/2024 1:29,7/7/2024 21:29,65.310643,65.526535,70.966994,71.182885
|
||||||
|
7/8/2024 1:34,7/7/2024 21:34,65.310643,65.526535,70.794281,70.966994
|
||||||
|
7/8/2024 1:39,7/7/2024 21:39,65.310643,65.267465,71.05335,71.05335
|
||||||
|
7/8/2024 1:44,7/7/2024 21:44,65.267465,64.965218,70.966994,71.269241
|
||||||
|
7/8/2024 1:49,7/7/2024 21:49,65.224287,65.267465,71.05335,71.096528
|
||||||
|
7/8/2024 1:54,7/7/2024 21:54,65.310643,65.785604,70.966994,71.096528
|
||||||
|
7/8/2024 1:59,7/7/2024 21:59,65.224287,65.699248,71.355598,71.355598
|
||||||
|
7/8/2024 2:04,7/7/2024 22:04,65.353822,65.699248,70.966994,71.139707
|
||||||
|
7/8/2024 2:09,7/7/2024 22:09,65.224287,65.440178,71.096528,71.182885
|
||||||
|
7/8/2024 2:14,7/7/2024 22:14,65.051574,65.871961,70.923815,71.182885
|
||||||
|
7/8/2024 2:19,7/7/2024 22:19,65.310643,65.915139,70.966994,71.355598
|
||||||
|
7/8/2024 2:24,7/7/2024 22:24,65.440178,65.526535,71.096528,71.269241
|
||||||
|
7/8/2024 2:29,7/7/2024 22:29,65.094752,65.871961,70.966994,71.139707
|
||||||
|
7/8/2024 2:34,7/7/2024 22:34,65.224287,65.310643,71.05335,71.269241
|
||||||
|
7/8/2024 2:39,7/7/2024 22:39,65.008396,65.440178,71.139707,71.441954
|
||||||
|
7/8/2024 2:44,7/7/2024 22:44,65.310643,65.785604,71.139707,71.528311
|
||||||
|
7/8/2024 2:49,7/7/2024 22:49,65.224287,65.483356,71.010172,71.441954
|
||||||
|
7/8/2024 2:54,7/7/2024 22:54,65.353822,65.483356,71.096528,71.571489
|
||||||
|
7/8/2024 2:59,7/7/2024 22:59,65.094752,65.310643,71.269241,71.485133
|
||||||
|
7/8/2024 3:04,7/7/2024 23:04,65.137931,65.181109,71.182885,71.096528
|
||||||
|
7/8/2024 3:09,7/7/2024 23:09,65.008396,65.181109,71.355598,71.139707
|
||||||
|
7/8/2024 3:14,7/7/2024 23:14,64.835683,65.353822,71.182885,71.226063
|
||||||
|
7/8/2024 3:19,7/7/2024 23:19,64.835683,65.267465,71.05335,71.05335
|
||||||
|
7/8/2024 3:24,7/7/2024 23:24,65.224287,65.310643,71.226063,71.355598
|
||||||
|
7/8/2024 3:29,7/7/2024 23:29,65.008396,65.181109,71.05335,71.139707
|
||||||
|
7/8/2024 3:34,7/7/2024 23:34,64.706148,65.137931,71.182885,71.226063
|
||||||
|
7/8/2024 3:39,7/7/2024 23:39,64.922039,64.965218,71.182885,71.139707
|
||||||
|
7/8/2024 3:44,7/7/2024 23:44,64.922039,65.397,71.182885,71.226063
|
||||||
|
7/8/2024 3:49,7/7/2024 23:49,64.965218,65.526535,71.226063,71.226063
|
||||||
|
7/8/2024 3:54,7/7/2024 23:54,65.008396,65.224287,71.226063,71.226063
|
||||||
|
7/8/2024 3:59,7/7/2024 23:59,64.749326,65.310643,71.139707,71.441954
|
||||||
|
7/8/2024 4:04,7/8/2024 0:04,64.835683,64.922039,71.182885,71.31242
|
||||||
|
7/8/2024 4:09,7/8/2024 0:09,64.706148,64.965218,71.269241,71.139707
|
||||||
|
7/8/2024 4:14,7/8/2024 0:14,64.706148,64.922039,71.096528,71.096528
|
||||||
|
7/8/2024 4:19,7/8/2024 0:19,64.490257,64.965218,71.010172,71.05335
|
||||||
|
7/8/2024 4:24,7/8/2024 0:24,64.447079,64.835683,71.010172,71.096528
|
||||||
|
7/8/2024 4:29,7/8/2024 0:29,64.66297,64.878861,71.096528,71.096528
|
||||||
|
7/8/2024 4:34,7/8/2024 0:34,64.360722,64.878861,71.096528,71.182885
|
||||||
|
7/8/2024 4:39,7/8/2024 0:39,64.447079,64.922039,71.05335,71.226063
|
||||||
|
7/8/2024 4:44,7/8/2024 0:44,64.360722,64.922039,71.096528,71.182885
|
||||||
|
7/8/2024 4:49,7/8/2024 0:49,64.533435,64.706148,71.096528,71.139707
|
||||||
|
7/8/2024 4:54,7/8/2024 0:54,64.490257,64.835683,70.966994,71.139707
|
||||||
|
7/8/2024 4:59,7/8/2024 0:59,64.706148,64.965218,71.010172,71.139707
|
||||||
|
7/8/2024 5:04,7/8/2024 1:04,64.706148,64.965218,71.226063,71.05335
|
||||||
|
7/8/2024 5:09,7/8/2024 1:09,64.317544,64.706148,71.096528,71.05335
|
||||||
|
7/8/2024 5:14,7/8/2024 1:14,64.274366,64.533435,71.05335,71.182885
|
||||||
|
7/8/2024 5:19,7/8/2024 1:19,64.447079,64.576613,71.139707,71.182885
|
||||||
|
7/8/2024 5:24,7/8/2024 1:24,64.619792,64.749326,71.226063,71.269241
|
||||||
|
7/8/2024 5:29,7/8/2024 1:29,64.533435,64.749326,71.139707,71.139707
|
||||||
|
7/8/2024 5:34,7/8/2024 1:34,64.447079,64.619792,70.966994,70.794281
|
||||||
|
7/8/2024 5:39,7/8/2024 1:39,63.885761,64.576613,70.966994,70.966994
|
||||||
|
7/8/2024 5:44,7/8/2024 1:44,63.92894,64.533435,71.139707,71.139707
|
||||||
|
7/8/2024 5:49,7/8/2024 1:49,64.188009,64.576613,70.794281,70.794281
|
||||||
|
7/8/2024 5:54,7/8/2024 1:54,64.015296,64.835683,70.880637,70.966994
|
||||||
|
7/8/2024 5:59,7/8/2024 1:59,64.274366,64.576613,70.707924,70.923815
|
||||||
|
7/8/2024 6:04,7/8/2024 2:04,63.92894,64.533435,70.923815,70.923815
|
||||||
|
7/8/2024 6:09,7/8/2024 2:09,64.015296,64.66297,71.05335,71.010172
|
||||||
|
7/8/2024 6:14,7/8/2024 2:14,63.972118,64.144831,70.966994,70.966994
|
||||||
|
7/8/2024 6:19,7/8/2024 2:19,63.92894,64.274366,70.923815,71.05335
|
||||||
|
7/8/2024 6:24,7/8/2024 2:24,63.972118,63.92894,71.05335,71.05335
|
||||||
|
7/8/2024 6:29,7/8/2024 2:29,64.058474,64.4039,71.05335,71.010172
|
||||||
|
7/8/2024 6:34,7/8/2024 2:34,63.972118,64.101653,71.010172,71.010172
|
||||||
|
7/8/2024 6:39,7/8/2024 2:39,63.92894,64.66297,71.010172,71.139707
|
||||||
|
7/8/2024 6:44,7/8/2024 2:44,63.842583,64.188009,71.010172,70.794281
|
||||||
|
7/8/2024 6:49,7/8/2024 2:49,63.842583,64.015296,71.05335,71.05335
|
||||||
|
7/8/2024 6:54,7/8/2024 2:54,64.015296,63.92894,70.664746,70.707924
|
||||||
|
7/8/2024 6:59,7/8/2024 2:59,63.842583,63.92894,70.664746,70.664746
|
||||||
|
7/8/2024 7:04,7/8/2024 3:04,63.92894,64.274366,70.966994,70.923815
|
||||||
|
7/8/2024 7:09,7/8/2024 3:09,63.92894,64.360722,71.010172,71.010172
|
||||||
|
7/8/2024 7:14,7/8/2024 3:14,63.92894,64.231187,70.923815,70.57839
|
||||||
|
7/8/2024 7:19,7/8/2024 3:19,63.972118,64.274366,70.664746,70.751102
|
||||||
|
7/8/2024 7:24,7/8/2024 3:24,63.972118,64.274366,70.57839,70.664746
|
||||||
|
7/8/2024 7:29,7/8/2024 3:29,63.972118,64.447079,70.751102,70.621568
|
||||||
|
7/8/2024 7:34,7/8/2024 3:34,63.885761,64.274366,70.751102,70.664746
|
||||||
|
7/8/2024 7:39,7/8/2024 3:39,63.92894,64.447079,70.664746,70.664746
|
||||||
|
7/8/2024 7:44,7/8/2024 3:44,64.015296,64.360722,70.664746,70.751102
|
||||||
|
7/8/2024 7:49,7/8/2024 3:49,63.842583,63.972118,70.664746,70.794281
|
||||||
|
7/8/2024 7:54,7/8/2024 3:54,63.583514,64.360722,70.751102,70.664746
|
||||||
|
7/8/2024 7:59,7/8/2024 3:59,64.101653,63.972118,70.621568,70.751102
|
||||||
|
7/8/2024 8:04,7/8/2024 4:04,64.058474,64.274366,70.751102,70.707924
|
||||||
|
7/8/2024 8:09,7/8/2024 4:09,63.713048,64.015296,70.751102,70.837459
|
||||||
|
7/8/2024 8:14,7/8/2024 4:14,63.756227,64.274366,70.794281,70.707924
|
||||||
|
7/8/2024 8:19,7/8/2024 4:19,63.799405,64.317544,70.664746,70.751102
|
||||||
|
7/8/2024 8:24,7/8/2024 4:24,63.540335,64.188009,70.621568,70.794281
|
||||||
|
7/8/2024 8:29,7/8/2024 4:29,63.713048,64.144831,70.923815,70.664746
|
||||||
|
7/8/2024 8:34,7/8/2024 4:34,63.626692,64.360722,70.751102,70.664746
|
||||||
|
7/8/2024 8:39,7/8/2024 4:39,63.66987,64.144831,70.664746,70.880637
|
||||||
|
7/8/2024 8:44,7/8/2024 4:44,63.713048,63.92894,70.751102,70.794281
|
||||||
|
7/8/2024 8:49,7/8/2024 4:49,63.583514,63.92894,70.751102,70.794281
|
||||||
|
7/8/2024 8:54,7/8/2024 4:54,63.66987,64.360722,70.751102,70.751102
|
||||||
|
7/8/2024 8:59,7/8/2024 4:59,63.583514,64.317544,70.664746,70.837459
|
||||||
|
7/8/2024 9:04,7/8/2024 5:04,63.799405,64.015296,70.707924,70.707924
|
||||||
|
7/8/2024 9:09,7/8/2024 5:09,63.756227,63.972118,70.707924,70.794281
|
||||||
|
7/8/2024 9:14,7/8/2024 5:14,63.66987,64.058474,70.664746,70.794281
|
||||||
|
7/8/2024 9:19,7/8/2024 5:19,63.583514,63.92894,70.707924,70.535211
|
||||||
|
7/8/2024 9:24,7/8/2024 5:24,63.713048,64.317544,70.707924,70.664746
|
||||||
|
7/8/2024 9:29,7/8/2024 5:29,63.583514,64.188009,70.664746,70.751102
|
||||||
|
7/8/2024 9:34,7/8/2024 5:34,63.713048,64.144831,70.664746,70.794281
|
||||||
|
7/8/2024 9:39,7/8/2024 5:39,63.799405,64.058474,70.837459,70.794281
|
||||||
|
7/8/2024 9:44,7/8/2024 5:44,63.540335,63.972118,70.794281,70.794281
|
||||||
|
7/8/2024 9:49,7/8/2024 5:49,63.583514,63.842583,70.621568,70.57839
|
||||||
|
7/8/2024 9:54,7/8/2024 5:54,63.756227,63.885761,70.664746,70.794281
|
||||||
|
7/8/2024 9:59,7/8/2024 5:59,63.756227,63.92894,70.57839,70.448855
|
||||||
|
7/8/2024 10:04,7/8/2024 6:04,63.799405,64.360722,70.707924,70.837459
|
||||||
|
7/8/2024 10:09,7/8/2024 6:09,63.92894,64.058474,70.664746,70.707924
|
||||||
|
7/8/2024 10:14,7/8/2024 6:14,63.885761,64.188009,70.621568,70.535211
|
||||||
|
7/8/2024 10:19,7/8/2024 6:19,63.92894,64.188009,70.621568,70.751102
|
||||||
|
7/8/2024 10:24,7/8/2024 6:24,64.058474,64.835683,70.707924,70.621568
|
||||||
|
7/8/2024 10:29,7/8/2024 6:29,63.92894,64.447079,70.707924,70.621568
|
||||||
|
7/8/2024 10:34,7/8/2024 6:34,63.92894,64.4039,70.621568,70.707924
|
||||||
|
7/8/2024 10:39,7/8/2024 6:39,63.885761,64.490257,70.57839,70.621568
|
||||||
|
7/8/2024 10:44,7/8/2024 6:44,63.799405,63.799405,70.621568,70.707924
|
||||||
|
7/8/2024 10:49,7/8/2024 6:49,63.799405,64.360722,70.751102,70.794281
|
||||||
|
7/8/2024 10:54,7/8/2024 6:54,64.015296,64.274366,70.535211,70.621568
|
||||||
|
7/8/2024 10:59,7/8/2024 6:59,64.058474,64.188009,70.621568,70.621568
|
||||||
|
7/8/2024 11:04,7/8/2024 7:04,64.015296,64.274366,70.621568,70.621568
|
||||||
|
7/8/2024 11:09,7/8/2024 7:09,63.92894,64.66297,70.57839,70.621568
|
||||||
|
7/8/2024 11:14,7/8/2024 7:14,63.972118,64.144831,70.621568,70.621568
|
||||||
|
7/8/2024 11:19,7/8/2024 7:19,63.885761,64.144831,70.57839,70.535211
|
||||||
|
7/8/2024 11:24,7/8/2024 7:24,64.101653,64.144831,70.707924,70.751102
|
||||||
|
7/8/2024 11:29,7/8/2024 7:29,63.972118,64.490257,70.664746,70.751102
|
||||||
|
7/8/2024 11:34,7/8/2024 7:34,63.972118,64.66297,70.707924,70.664746
|
||||||
|
7/8/2024 11:39,7/8/2024 7:39,63.972118,64.188009,70.57839,70.492033
|
||||||
|
7/8/2024 11:44,7/8/2024 7:44,64.317544,64.66297,70.535211,70.535211
|
||||||
|
7/8/2024 11:49,7/8/2024 7:49,64.188009,64.749326,70.57839,70.707924
|
||||||
|
7/8/2024 11:54,7/8/2024 7:54,64.101653,64.533435,70.535211,70.621568
|
||||||
|
7/8/2024 11:59,7/8/2024 7:59,64.188009,64.576613,70.57839,70.448855
|
||||||
|
7/8/2024 12:04,7/8/2024 8:04,64.274366,64.792505,70.57839,70.57839
|
||||||
|
7/8/2024 12:09,7/8/2024 8:09,64.231187,64.66297,70.492033,70.492033
|
||||||
|
7/8/2024 12:14,7/8/2024 8:14,64.274366,64.706148,70.405677,70.57839
|
||||||
|
7/8/2024 12:19,7/8/2024 8:19,64.360722,64.749326,70.535211,70.362498
|
||||||
|
7/8/2024 12:24,7/8/2024 8:24,64.317544,64.835683,70.492033,70.621568
|
||||||
|
7/8/2024 12:29,7/8/2024 8:29,64.490257,64.66297,70.492033,70.621568
|
||||||
|
7/8/2024 12:34,7/8/2024 8:34,64.447079,64.533435,70.448855,70.621568
|
||||||
|
7/8/2024 12:39,7/8/2024 8:39,64.447079,64.66297,70.57839,70.57839
|
||||||
|
7/8/2024 12:44,7/8/2024 8:44,64.317544,64.66297,70.57839,70.57839
|
||||||
|
7/8/2024 12:49,7/8/2024 8:49,64.533435,64.447079,70.448855,70.57839
|
||||||
|
7/8/2024 12:54,7/8/2024 8:54,64.447079,64.66297,70.405677,70.448855
|
||||||
|
7/8/2024 12:59,7/8/2024 8:59,64.447079,64.706148,70.535211,70.362498
|
||||||
|
7/8/2024 13:04,7/8/2024 9:04,64.447079,64.749326,70.751102,70.751102
|
||||||
|
|
|
|
@ -29,13 +29,13 @@ for day in pd.Index(data.index.date).unique():
|
||||||
fig = go.Figure()
|
fig = go.Figure()
|
||||||
|
|
||||||
fig.add_trace(go.Scatter(x=day_data.index, y=day_data['Sewer Water In Smooth'], mode='lines', name='Sewer Water In',
|
fig.add_trace(go.Scatter(x=day_data.index, y=day_data['Sewer Water In Smooth'], mode='lines', name='Sewer Water In',
|
||||||
line=dict(shape='spline', color='blue', width=4, dash='solid')))
|
line=dict(shape='spline', color='blue', width=2, dash='solid')))
|
||||||
fig.add_trace(go.Scatter(x=day_data.index, y=day_data['Sewer Water Out Smooth'], mode='lines', name='Sewer Water Out',
|
fig.add_trace(go.Scatter(x=day_data.index, y=day_data['Sewer Water Out Smooth'], mode='lines', name='Sewer Water Out',
|
||||||
line=dict(shape='spline', color='red', width=4, dash='solid')))
|
line=dict(shape='spline', color='red', width=2, dash='solid')))
|
||||||
fig.add_trace(go.Scatter(x=day_data.index, y=day_data['Return Air Smooth'], mode='lines', name='Return Air',
|
fig.add_trace(go.Scatter(x=day_data.index, y=day_data['Return Air Smooth'], mode='lines', name='Return Air',
|
||||||
line=dict(shape='spline', color='orange', width=4, dash='solid')))
|
line=dict(shape='spline', color='orange', width=2, dash='solid')))
|
||||||
fig.add_trace(go.Scatter(x=day_data.index, y=day_data['Supply Air Smooth'], mode='lines', name='Supply Air',
|
fig.add_trace(go.Scatter(x=day_data.index, y=day_data['Supply Air Smooth'], mode='lines', name='Supply Air',
|
||||||
line=dict(shape='spline', color='green', width=4, dash='solid')))
|
line=dict(shape='spline', color='green', width=2, dash='solid')))
|
||||||
|
|
||||||
fig.update_layout(
|
fig.update_layout(
|
||||||
title=dict(
|
title=dict(
|
||||||
|
@ -60,6 +60,6 @@ for day in pd.Index(data.index.date).unique():
|
||||||
)
|
)
|
||||||
|
|
||||||
# Save the plot (requires kaleido package)
|
# Save the plot (requires kaleido package)
|
||||||
fig.write_image(f'plotly_plot_{day}.png')
|
fig.write_image(f'temperature_variations_without_Q_{day}.png')
|
||||||
|
|
||||||
|
|
||||||
|
|
54
double_y.py
54
double_y.py
|
@ -1,44 +1,64 @@
|
||||||
import pandas as pd
|
import pandas as pd
|
||||||
import plotly.graph_objects as go
|
|
||||||
from plotly.subplots import make_subplots
|
|
||||||
|
|
||||||
# Load the data (assuming you've already loaded and processed it as shown)
|
# Load the data
|
||||||
data = pd.read_csv('06-25_07-07.csv')
|
data = pd.read_csv('06-25_07-07.csv')
|
||||||
|
|
||||||
# Calculation of Q (BTU / lb)
|
|
||||||
data['Q (BTU/lb)'] = data['Sewer Water Out'] - data['Sewer Water In']
|
|
||||||
|
|
||||||
# Convert 'Date/Time (--4:0:0)' column to datetime
|
# Convert 'Date/Time (--4:0:0)' column to datetime
|
||||||
data['Date/Time (--4:0:0)'] = pd.to_datetime(data['Date/Time (--4:0:0)'])
|
data['Date/Time (--4:0:0)'] = pd.to_datetime(data['Date/Time (--4:0:0)'])
|
||||||
|
|
||||||
|
# Calculate the time difference between consecutive points in minutes
|
||||||
|
data['Time Diff (min)'] = data['Date/Time (--4:0:0)'].diff().dt.total_seconds() / 60
|
||||||
|
|
||||||
|
# Set flow rate and specific heat capacity
|
||||||
|
flow_rate_gpm = 10
|
||||||
|
density_water = 62.4 # lbm/ft^3
|
||||||
|
flow_rate_lbm_min = flow_rate_gpm * 0.133681 * density_water # Convert GPM to lbm/min
|
||||||
|
|
||||||
|
# Calculate Q (BTU)
|
||||||
|
cp_water = 1 # BTU/lbm°F
|
||||||
|
data['Delta T (F)'] = data['Sewer Water Out'] - data['Sewer Water In']
|
||||||
|
data['Q (BTU)'] = flow_rate_lbm_min * cp_water * data['Delta T (F)'] * data['Time Diff (min)']
|
||||||
|
|
||||||
# Apply a smoothing function (moving average)
|
# Apply a smoothing function (moving average)
|
||||||
window_size = 10
|
window_size = 10
|
||||||
data['Sewer Water In Smooth'] = data['Sewer Water In'].rolling(window=window_size, center=True).mean()
|
data['Sewer Water In Smooth'] = data['Sewer Water In'].rolling(window=window_size, center=True).mean()
|
||||||
data['Sewer Water Out Smooth'] = data['Sewer Water Out'].rolling(window=window_size, center=True).mean()
|
data['Sewer Water Out Smooth'] = data['Sewer Water Out'].rolling(window=window_size, center=True).mean()
|
||||||
data['Return Air Smooth'] = data['Return Air'].rolling(window=window_size, center=True).mean()
|
data['Return Air Smooth'] = data['Return Air'].rolling(window=window_size, center=True).mean()
|
||||||
data['Supply Air Smooth'] = data['Supply Air'].rolling(window=window_size, center=True).mean()
|
data['Supply Air Smooth'] = data['Supply Air'].rolling(window=window_size, center=True).mean()
|
||||||
data['Q Smooth'] = data['Q (BTU/lb)'].rolling(window=window_size, center=True).mean()
|
data['Q Smooth'] = data['Q (BTU)'].rolling(window=window_size, center=True).mean()
|
||||||
|
|
||||||
|
# Plotting the data
|
||||||
|
import plotly.graph_objects as go
|
||||||
|
from plotly.subplots import make_subplots
|
||||||
|
|
||||||
fig = make_subplots(rows=1, cols=1, shared_xaxes=True, vertical_spacing=0.1,
|
fig = make_subplots(rows=1, cols=1, shared_xaxes=True, vertical_spacing=0.1,
|
||||||
subplot_titles=(f'Temperature Variations and Transferred Heat from 25/06/2024-07/07/2024',),
|
subplot_titles=('Temperature Variations and Transferred Heat from 25/06/2024-08/07/2024',),
|
||||||
specs=[[{"secondary_y": True}]])
|
specs=[[{"secondary_y": True}]])
|
||||||
|
|
||||||
fig.add_trace(go.Scatter(x=data['Date/Time (--4:0:0)'], y=data['Sewer Water In Smooth'], mode='lines', name='Sewer Water In',
|
fig.add_trace(go.Scatter(x=data['Date/Time (--4:0:0)'], y=data['Sewer Water In Smooth'], mode='lines', name='Sewer Water In',
|
||||||
line=dict(shape='spline', color='blue', width=4, dash='solid')), secondary_y=False)
|
line=dict(shape='spline', color='blue', width=2, dash='solid')), secondary_y=False)
|
||||||
fig.add_trace(go.Scatter(x=data['Date/Time (--4:0:0)'], y=data['Sewer Water Out Smooth'], mode='lines', name='Sewer Water Out',
|
fig.add_trace(go.Scatter(x=data['Date/Time (--4:0:0)'], y=data['Sewer Water Out Smooth'], mode='lines', name='Sewer Water Out',
|
||||||
line=dict(shape='spline', color='red', width=4, dash='solid')), secondary_y=False)
|
line=dict(shape='spline', color='red', width=2, dash='solid')), secondary_y=False)
|
||||||
fig.add_trace(go.Scatter(x=data['Date/Time (--4:0:0)'], y=data['Return Air Smooth'], mode='lines', name='Return Air',
|
fig.add_trace(go.Scatter(x=data['Date/Time (--4:0:0)'], y=data['Return Air Smooth'], mode='lines', name='Return Air',
|
||||||
line=dict(shape='spline', color='orange', width=4, dash='solid')), secondary_y=False)
|
line=dict(shape='spline', color='orange', width=2, dash='solid')), secondary_y=False)
|
||||||
fig.add_trace(go.Scatter(x=data['Date/Time (--4:0:0)'], y=data['Supply Air Smooth'], mode='lines', name='Supply Air',
|
fig.add_trace(go.Scatter(x=data['Date/Time (--4:0:0)'], y=data['Supply Air Smooth'], mode='lines', name='Supply Air',
|
||||||
line=dict(shape='spline', color='green', width=4, dash='solid')), secondary_y=False)
|
line=dict(shape='spline', color='green', width=2, dash='solid')), secondary_y=False)
|
||||||
fig.add_trace(go.Scatter(x=data['Date/Time (--4:0:0)'], y=data['Q Smooth'], mode='lines', name='Transferred Heat (BTU/lb)',
|
fig.add_trace(go.Scatter(x=data['Date/Time (--4:0:0)'], y=data['Q Smooth'], mode='lines', name='Transferred Heat (BTU)',
|
||||||
line=dict(shape='spline', color='purple', width=4, dash='solid')), secondary_y=True)
|
line=dict(shape='spline', color='purple', width=2, dash='solid')), secondary_y=True)
|
||||||
# Update layout
|
|
||||||
|
# Update layout with secondary y-axis title
|
||||||
fig.update_layout(
|
fig.update_layout(
|
||||||
xaxis_title='Date/Time',
|
xaxis_title='Date/Time',
|
||||||
yaxis_title='Temperature (F)',
|
yaxis_title='Temperature (F)',
|
||||||
|
yaxis2_title='Transferred Heat (BTU)',
|
||||||
legend_title_text='Legend',
|
legend_title_text='Legend',
|
||||||
font=dict(size=14),
|
font=dict(size=14),
|
||||||
width=1400,
|
width=1400,
|
||||||
height=800
|
height=800
|
||||||
)
|
)
|
||||||
|
|
||||||
# Save the plot (requires kaleido package)
|
# Save the plot (requires kaleido package)
|
||||||
fig.write_image('plotly_plot_with_q.png')
|
fig.write_image('temperature_variations_with_q.png')
|
||||||
|
|
||||||
|
# Display the plot
|
||||||
|
fig.show()
|
|
@ -2,22 +2,32 @@ import pandas as pd
|
||||||
import plotly.graph_objects as go
|
import plotly.graph_objects as go
|
||||||
from plotly.subplots import make_subplots
|
from plotly.subplots import make_subplots
|
||||||
|
|
||||||
# Load the data (assuming you've already loaded and processed it as shown)
|
# Load the data
|
||||||
data = pd.read_csv('06-25_07-07.csv')
|
data = pd.read_csv('06-25_07-07.csv')
|
||||||
|
|
||||||
# Calculation of Q (BTU / lb)
|
|
||||||
data['Q (BTU/lb)'] = data['Sewer Water Out'] - data['Sewer Water In']
|
|
||||||
|
|
||||||
# Convert 'Date/Time (--4:0:0)' column to datetime
|
# Convert 'Date/Time (--4:0:0)' column to datetime
|
||||||
data['Date/Time (--4:0:0)'] = pd.to_datetime(data['Date/Time (--4:0:0)'])
|
data['Date/Time (--4:0:0)'] = pd.to_datetime(data['Date/Time (--4:0:0)'])
|
||||||
|
|
||||||
|
# Calculate the time difference between consecutive points in minutes
|
||||||
|
data['Time Diff (min)'] = data['Date/Time (--4:0:0)'].diff().dt.total_seconds() / 60
|
||||||
|
|
||||||
|
# Set flow rate and specific heat capacity
|
||||||
|
flow_rate_gpm = 10
|
||||||
|
density_water = 62.4 # lbm/ft^3
|
||||||
|
flow_rate_lbm_min = flow_rate_gpm * 0.133681 * density_water # Convert GPM to lbm/min
|
||||||
|
|
||||||
|
# Calculate Q (BTU)
|
||||||
|
cp_water = 1 # BTU/lbm°F
|
||||||
|
data['Delta T (F)'] = data['Sewer Water Out'] - data['Sewer Water In']
|
||||||
|
data['Q (BTU)'] = flow_rate_lbm_min * cp_water * data['Delta T (F)'] * data['Time Diff (min)']
|
||||||
|
|
||||||
# Apply a smoothing function (moving average)
|
# Apply a smoothing function (moving average)
|
||||||
window_size = 10
|
window_size = 10
|
||||||
data['Sewer Water In Smooth'] = data['Sewer Water In'].rolling(window=window_size, center=True).mean()
|
data['Sewer Water In Smooth'] = data['Sewer Water In'].rolling(window=window_size, center=True).mean()
|
||||||
data['Sewer Water Out Smooth'] = data['Sewer Water Out'].rolling(window=window_size, center=True).mean()
|
data['Sewer Water Out Smooth'] = data['Sewer Water Out'].rolling(window=window_size, center=True).mean()
|
||||||
data['Return Air Smooth'] = data['Return Air'].rolling(window=window_size, center=True).mean()
|
data['Return Air Smooth'] = data['Return Air'].rolling(window=window_size, center=True).mean()
|
||||||
data['Supply Air Smooth'] = data['Supply Air'].rolling(window=window_size, center=True).mean()
|
data['Supply Air Smooth'] = data['Supply Air'].rolling(window=window_size, center=True).mean()
|
||||||
data['Q Smooth'] = data['Q (BTU/lb)'].rolling(window=window_size, center=True).mean()
|
data['Q Smooth'] = data['Q (BTU)'].rolling(window=window_size, center=True).mean()
|
||||||
|
|
||||||
# Iterate through each calendar day and create separate plots
|
# Iterate through each calendar day and create separate plots
|
||||||
for day in pd.Index(data['Date/Time (--4:0:0)'].dt.date).unique():
|
for day in pd.Index(data['Date/Time (--4:0:0)'].dt.date).unique():
|
||||||
|
@ -31,20 +41,21 @@ for day in pd.Index(data['Date/Time (--4:0:0)'].dt.date).unique():
|
||||||
|
|
||||||
# Add traces for each line with spline smoothing and increased visibility
|
# Add traces for each line with spline smoothing and increased visibility
|
||||||
fig.add_trace(go.Scatter(x=day_data['Date/Time (--4:0:0)'], y=day_data['Sewer Water In Smooth'], mode='lines', name='Sewer Water In',
|
fig.add_trace(go.Scatter(x=day_data['Date/Time (--4:0:0)'], y=day_data['Sewer Water In Smooth'], mode='lines', name='Sewer Water In',
|
||||||
line=dict(shape='spline', color='blue', width=4, dash='solid')), secondary_y=False)
|
line=dict(shape='spline', color='blue', width=2, dash='solid')), secondary_y=False)
|
||||||
fig.add_trace(go.Scatter(x=day_data['Date/Time (--4:0:0)'], y=day_data['Sewer Water Out Smooth'], mode='lines', name='Sewer Water Out',
|
fig.add_trace(go.Scatter(x=day_data['Date/Time (--4:0:0)'], y=day_data['Sewer Water Out Smooth'], mode='lines', name='Sewer Water Out',
|
||||||
line=dict(shape='spline', color='red', width=4, dash='solid')), secondary_y=False)
|
line=dict(shape='spline', color='red', width=2, dash='solid')), secondary_y=False)
|
||||||
fig.add_trace(go.Scatter(x=day_data['Date/Time (--4:0:0)'], y=day_data['Return Air Smooth'], mode='lines', name='Return Air',
|
fig.add_trace(go.Scatter(x=day_data['Date/Time (--4:0:0)'], y=day_data['Return Air Smooth'], mode='lines', name='Return Air',
|
||||||
line=dict(shape='spline', color='orange', width=4, dash='solid')), secondary_y=False)
|
line=dict(shape='spline', color='orange', width=2, dash='solid')), secondary_y=False)
|
||||||
fig.add_trace(go.Scatter(x=day_data['Date/Time (--4:0:0)'], y=day_data['Supply Air Smooth'], mode='lines', name='Supply Air',
|
fig.add_trace(go.Scatter(x=day_data['Date/Time (--4:0:0)'], y=day_data['Supply Air Smooth'], mode='lines', name='Supply Air',
|
||||||
line=dict(shape='spline', color='green', width=4, dash='solid')), secondary_y=False)
|
line=dict(shape='spline', color='green', width=2, dash='solid')), secondary_y=False)
|
||||||
fig.add_trace(go.Scatter(x=day_data['Date/Time (--4:0:0)'], y=day_data['Q Smooth'], mode='lines', name='Transferred Heat (BTU/lb)',
|
fig.add_trace(go.Scatter(x=day_data['Date/Time (--4:0:0)'], y=day_data['Q Smooth'], mode='lines', name='Transferred Heat (BTU/lb)',
|
||||||
line=dict(shape='spline', color='purple', width=4, dash='solid')), secondary_y=True)
|
line=dict(shape='spline', color='purple', width=2, dash='solid')), secondary_y=True)
|
||||||
|
|
||||||
# Update layout
|
# Update layout
|
||||||
fig.update_layout(
|
fig.update_layout(
|
||||||
xaxis_title='Date/Time',
|
xaxis_title='Date/Time',
|
||||||
yaxis_title='Temperature (F)',
|
yaxis_title='Temperature (F)',
|
||||||
|
yaxis2_title='Transferred Heat (BTU/lb)',
|
||||||
legend_title_text='Legend',
|
legend_title_text='Legend',
|
||||||
font=dict(size=14),
|
font=dict(size=14),
|
||||||
width=1400,
|
width=1400,
|
||||||
|
@ -52,4 +63,4 @@ for day in pd.Index(data['Date/Time (--4:0:0)'].dt.date).unique():
|
||||||
)
|
)
|
||||||
|
|
||||||
# Save the plot (requires kaleido package)
|
# Save the plot (requires kaleido package)
|
||||||
fig.write_image(f'plotly_plot_{day}.png')
|
fig.write_image(f'temperature_variations_with_q_{day}.png')
|
12
main.py
12
main.py
|
@ -21,13 +21,13 @@ fig = go.Figure()
|
||||||
|
|
||||||
# Add traces for each line with spline smoothing and increased visibility
|
# Add traces for each line with spline smoothing and increased visibility
|
||||||
fig.add_trace(go.Scatter(x=data.index, y=data['Sewer Water In Smooth'], mode='lines', name='Sewer Water In',
|
fig.add_trace(go.Scatter(x=data.index, y=data['Sewer Water In Smooth'], mode='lines', name='Sewer Water In',
|
||||||
line=dict(shape='spline', color='blue', width=4, dash='solid')))
|
line=dict(shape='spline', color='blue', width=2, dash='solid')))
|
||||||
fig.add_trace(go.Scatter(x=data.index, y=data['Sewer Water Out Smooth'], mode='lines', name='Sewer Water Out',
|
fig.add_trace(go.Scatter(x=data.index, y=data['Sewer Water Out Smooth'], mode='lines', name='Sewer Water Out',
|
||||||
line=dict(shape='spline', color='red', width=4, dash='solid')))
|
line=dict(shape='spline', color='red', width=2, dash='solid')))
|
||||||
fig.add_trace(go.Scatter(x=data.index, y=data['Return Air Smooth'], mode='lines', name='Return Air',
|
fig.add_trace(go.Scatter(x=data.index, y=data['Return Air Smooth'], mode='lines', name='Return Air',
|
||||||
line=dict(shape='spline', color='orange', width=4, dash='solid')))
|
line=dict(shape='spline', color='orange', width=2, dash='solid')))
|
||||||
fig.add_trace(go.Scatter(x=data.index, y=data['Supply Air Smooth'], mode='lines', name='Supply Air',
|
fig.add_trace(go.Scatter(x=data.index, y=data['Supply Air Smooth'], mode='lines', name='Supply Air',
|
||||||
line=dict(shape='spline', color='green', width=4, dash='solid')))
|
line=dict(shape='spline', color='green', width=2, dash='solid')))
|
||||||
|
|
||||||
# Add shading to separate days
|
# Add shading to separate days
|
||||||
for i in range((data.index[-1] - data.index[0]).days + 1):
|
for i in range((data.index[-1] - data.index[0]).days + 1):
|
||||||
|
@ -43,7 +43,7 @@ for i in range((data.index[-1] - data.index[0]).days + 1):
|
||||||
# Update layout for better styling and to set figure size
|
# Update layout for better styling and to set figure size
|
||||||
fig.update_layout(
|
fig.update_layout(
|
||||||
title=dict(
|
title=dict(
|
||||||
text='Temperature Variations from 25/06/2024-07/07/2024',
|
text='Temperature Variations from 25/06/2024-08/07/2024',
|
||||||
font=dict(size=20, family='Arial', color='black', weight='bold')
|
font=dict(size=20, family='Arial', color='black', weight='bold')
|
||||||
),
|
),
|
||||||
xaxis_title=dict(
|
xaxis_title=dict(
|
||||||
|
@ -64,7 +64,7 @@ fig.update_layout(
|
||||||
)
|
)
|
||||||
|
|
||||||
# Save the plot (requires kaleido package)
|
# Save the plot (requires kaleido package)
|
||||||
fig.write_image('plotly_plot.png')
|
fig.write_image('temperatures without Q.png')
|
||||||
|
|
||||||
# Display the plot
|
# Display the plot
|
||||||
fig.show()
|
fig.show()
|
||||||
|
|
|
@ -1,29 +1,38 @@
|
||||||
import pandas as pd
|
import pandas as pd
|
||||||
import plotly.graph_objects as go
|
import plotly.graph_objects as go
|
||||||
|
|
||||||
# Load the data (assuming you've already loaded and processed it as shown)
|
# Load the data
|
||||||
data = pd.read_csv('06-25_07-07.csv')
|
data = pd.read_csv('06-25_07-07.csv')
|
||||||
# Calculation of Q (BTU / lb)
|
|
||||||
t_sewer_in = data['Sewer Water In'].to_list()
|
|
||||||
t_sewer_out = data['Sewer Water Out'].to_list() # corrected column name
|
|
||||||
q = [t_sewer_out[i] - t_sewer_in[i] for i in range(len(t_sewer_out))]
|
|
||||||
data['Q (BTU/lb)'] = q
|
|
||||||
# Convert 'Date/Time (--4:0:0)' column to datetime
|
# Convert 'Date/Time (--4:0:0)' column to datetime
|
||||||
data['Date/Time (--4:0:0)'] = pd.to_datetime(data['Date/Time (--4:0:0)'])
|
data['Date/Time (--4:0:0)'] = pd.to_datetime(data['Date/Time (--4:0:0)'])
|
||||||
|
|
||||||
|
# Calculate the time difference between consecutive points in minutes
|
||||||
|
data['Time Diff (min)'] = data['Date/Time (--4:0:0)'].diff().dt.total_seconds() / 60
|
||||||
|
|
||||||
|
# Set flow rate and specific heat capacity
|
||||||
|
flow_rate_gpm = 10
|
||||||
|
density_water = 62.4 # lbm/ft^3
|
||||||
|
flow_rate_lbm_min = flow_rate_gpm * 0.133681 * density_water # Convert GPM to lbm/min
|
||||||
|
|
||||||
|
# Calculate Q (BTU)
|
||||||
|
cp_water = 1 # BTU/lbm°F
|
||||||
|
data['Delta T (F)'] = data['Sewer Water Out'] - data['Sewer Water In']
|
||||||
|
data['Q (BTU)'] = flow_rate_lbm_min * cp_water * data['Delta T (F)'] * data['Time Diff (min)']
|
||||||
|
|
||||||
# Set the datetime column as the index
|
# Set the datetime column as the index
|
||||||
data.set_index('Date/Time (--4:0:0)', inplace=True)
|
data.set_index('Date/Time (--4:0:0)', inplace=True)
|
||||||
|
|
||||||
# Apply a smoothing function (moving average)
|
# Apply a smoothing function (moving average)
|
||||||
window_size = 10
|
window_size = 10
|
||||||
data['Q Smooth'] = data['Q (BTU/lb)'].rolling(window=window_size, center=True).mean()
|
data['Q Smooth'] = data['Q (BTU)'].rolling(window=window_size, center=True).mean()
|
||||||
# Ensure index is a datetime index for ease of filtering
|
# Ensure index is a datetime index for ease of filtering
|
||||||
data.index = pd.to_datetime(data.index)
|
data.index = pd.to_datetime(data.index)
|
||||||
# Create the plot
|
# Create the plot
|
||||||
fig = go.Figure()
|
fig = go.Figure()
|
||||||
# Add traces for each line with spline smoothing and increased visibility
|
# Add traces for each line with spline smoothing and increased visibility
|
||||||
fig.add_trace(go.Scatter(x=data.index, y=data['Q Smooth'], mode='lines', name='Transferred Heat (BTU/lb)',
|
fig.add_trace(go.Scatter(x=data.index, y=data['Q Smooth'], mode='lines', name='Transferred Heat (BTU/lb)',
|
||||||
line=dict(shape='spline', color='blue', width=4, dash='solid')))
|
line=dict(shape='spline', color='blue', width=2, dash='solid')))
|
||||||
|
|
||||||
# Add shading to separate days
|
# Add shading to separate days
|
||||||
for i in range((data.index[-1] - data.index[0]).days + 1):
|
for i in range((data.index[-1] - data.index[0]).days + 1):
|
||||||
|
@ -47,7 +56,7 @@ fig.update_layout(
|
||||||
font=dict(size=18, family='Arial', color='black', weight='bold')
|
font=dict(size=18, family='Arial', color='black', weight='bold')
|
||||||
),
|
),
|
||||||
yaxis_title=dict(
|
yaxis_title=dict(
|
||||||
text='Energy (BTU/lb)',
|
text='Energy (BTU)',
|
||||||
font=dict(size=18, family='Arial', color='black', weight='bold')
|
font=dict(size=18, family='Arial', color='black', weight='bold')
|
||||||
),
|
),
|
||||||
legend=dict(
|
legend=dict(
|
||||||
|
|
Loading…
Reference in New Issue
Block a user