import React from 'react' interface Row { metric: string [key: string]: string | number } interface IndependentMetricsTableProps { independentMetrics: string[] tableHeader: string[] selectedModels: Set tableRows: Row[] } const IndependentMetricsTable: React.FC = ({ independentMetrics, tableHeader, selectedModels, tableRows, }) => { if (independentMetrics.length === 0) return null return (
{tableHeader .filter((model) => selectedModels.has(model)) .map((model) => ( ))} {independentMetrics.sort().map((metric) => { const row = tableRows.find((r) => r.metric === metric) if (!row) return null return ( {tableHeader .filter((model) => selectedModels.has(model)) .map((col) => { const cell = row[col] return ( ) })} ) })}
Metric {model}
{metric} {!isNaN(Number(cell)) ? Number(Number(cell).toFixed(3)) : cell}
) } export default IndependentMetricsTable