TimeLinR / modules /timeline.py
MakiAi's picture
git commit -m "初期コミット"
3d65dc5
Raw
History Blame Contribute Delete
1.16 kB
import pandas as pd
def generate_timeline_html(df, margin_coefficient):
"""
タイムラインのHTMLを生成する関数。
Parameters:
- df: タイムラインのデータを含むDataFrame。
- margin_coefficient: 上部マージンの係数。
Returns:
- timeline_html: 生成されたタイムラインのHTML。
"""
timeline_html = '<ul class="time-schedule">'
base_time = pd.to_datetime(df["time"].iloc[0], format="%H:%M")
for _, row in df.iterrows():
time = row["time"]
title = row["title"]
content = row["content"]
time_diff = pd.to_datetime(time, format="%H:%M") - base_time
minutes_diff = time_diff.total_seconds() / 60
margin_top = f"{minutes_diff * margin_coefficient}px"
timeline_html += f'''
<li style="margin-top: {margin_top};">
<span class="time">{time}</span>
<div class="sch_box">
<p class="sch_title">{title}</p>
<p class="sch_tx">{content}</p>
</div>
</li>'''
timeline_html += '</ul>'
return timeline_html