diff --git a/deck-frontend/deck-v4.6.html b/deck-frontend/deck-v4.6.html index 70cc8dc..48aecb9 100644 --- a/deck-frontend/deck-v4.6.html +++ b/deck-frontend/deck-v4.6.html @@ -1284,8 +1284,15 @@ const GraphView = { area.innerHTML = '
'; const container = area.querySelector(".graph-container"); + // Count tags per category + const categoryCounts = new Map(); + tags.forEach(tag => { + const cat = Utils.getCategory(tag); + categoryCounts.set(cat, (categoryCounts.get(cat) || 0) + 1); + }); + this.renderSVG(container, nodes, links); - this.renderSidebar(container, nodes.length, links.length); + this.renderSidebar(container, nodes.length, links.length, categoryCounts); this.renderControls(container); this.renderLegend(container); }, @@ -1362,10 +1369,19 @@ const GraphView = { .on("end", (e, d) => { if (!e.active) sim.alphaTarget(0); d.fx = null; d.fy = null; }); }, - renderSidebar(container, nodeCount, edgeCount) { + renderSidebar(container, nodeCount, edgeCount, categoryCounts) { const { graphFilters, graphSettings } = State.get(); const sidebar = document.createElement("div"); sidebar.className = "graph-sidebar"; + + // Only show categories that have tags in current data + const categoryHTML = Object.entries(CONFIG.CATEGORIES) + .filter(([key]) => categoryCounts.has(key) && categoryCounts.get(key) > 0) + .map(([key, val]) => { + const count = categoryCounts.get(key) || 0; + return ``; + }).join(""); + sidebar.innerHTML = `
Stats
@@ -1374,7 +1390,7 @@ const GraphView = {
Categorías
- ${Object.entries(CONFIG.CATEGORIES).map(([key, val]) => ``).join("")} + ${categoryHTML || 'Sin categorías'}
Relaciones