import React from 'react' import './ReportComponents.scss' interface ReportHeatmapProps { data: number[][] } const ReportHeatmap: React.FC = ({ data }) => { if (!data || data.length === 0) return null const maxHeat = Math.max(...data.flat()) const weekLabels = ['周一', '周二', '周三', '周四', '周五', '周六', '周日'] return (
{[0, 6, 12, 18].map(h => ( {h} ))}
{weekLabels.map(w =>
{w}
)}
{data.map((row, wi) => row.map((val, hi) => { const alpha = maxHeat > 0 ? (val / maxHeat * 0.85 + 0.1).toFixed(2) : '0.1' return (
) }) )}
) } export default ReportHeatmap