Files
odoo-expertos.com/pt/odoo-ia/odoo-inventario-ia-inteligente-2025/index.html
T
2026-08-28 10:11:11 -03:00

650 lines
34 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="pt-BR">
<head>
<!-- Performance: Preconnect to critical origins -->
<link rel="preconnect" href="https://d3js.org" crossorigin>
<link rel="preconnect" href="https://images.pexels.com" crossorigin>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/svg+xml" href="/favicon.svg">
<link rel="alternate icon" href="/favicon.ico">
<title>Odoo Inventario IA Inteligente 2025 | Odoo Expertos · PT</title>
<link rel="canonical" href="https://www.odoo-expertos.com/pt/odoo-ia/odoo-inventario-ia-inteligente-2025/">
<meta name="description" content="Descubre cómo el Inventário IA de Odoo optimiza stock automáticamente, predice demanda y reduce costos de almacenamiento h - Odoo Inventario IA Inteligente 2025 | PT">
<meta name="keywords" content="odoo inventario ia, gestion inteligente stock, inventario predictivo, optimizacion inventario, ai stock management">
<meta name="robots" content="index, follow">
<meta name="author" content="Equipo Odoo Expertos">
<!-- Open Graph Meta Tags -->
<meta property="og:title" content="Odoo Inventário de IA Inteligente: Gestión Predictiva de Stock 2025 | Odoo Expertos">
<meta property="og:description" content="Descubre cómo el Inventário IA de Odoo optimiza stock automáticamente, predice demanda y reduce costos de almacenamiento hasta 40% en 2025.">
<meta property="og:type" content="article">
<meta property="og:url" content="https://www.odoo-expertos.com/pt/odoo-ia/odoo-inventario-ia-inteligente-2025/">
<meta property="og:site_name" content="Odoo Expertos">
<meta property="og:locale" content="pt_BR">
<!-- Twitter Card Meta Tags -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="Odoo Inventário de IA Inteligente: Gestión Predictiva de Stock 2025 | Odoo Expertos">
<meta name="twitter:description" content="Descubre cómo el Inventário IA de Odoo optimiza stock automáticamente, predice demanda y reduce costos de almacenamiento hasta 40% en 2025.">
<link rel="stylesheet" href="/css/main.min.css">
<!-- Breadcrumbs Schema -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Início",
"item": "https://www.odoo-expertos.com/"
},
{
"@type": "ListItem",
"position": 2,
"name": "Odoo IA",
"item": "https://www.odoo-expertos.com/pt/odoo-ia/"
},
{
"@type": "ListItem",
"position": 3,
"name": "Inventário de IA Inteligente",
"item": "https://www.odoo-expertos.com/pt/odoo-ia/odoo-inventario-ia-inteligente-2025/"
}
]
}
</script>
<!-- Article Schema -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Odoo Inventário de IA Inteligente: Gestión Predictiva de Stock 2025",
"description": "Descubre cómo el Inventário IA de Odoo optimiza stock automáticamente, predice demanda y reduce costos de almacenamiento hasta 40% en 2025.",
"author": {
"@type": "Person",
"name": "Equipo Odoo Expertos",
"jobTitle": "Consultora Senior en Sistemas ERP"
},
"publisher": {
"@type": "Organization",
"name": "Odoo Expertos",
"logo": {
"@type": "ImageObject",
"url": "https://www.odoo-expertos.com/logo.png"
}
},
"datePublished": "2025-07-19T20:30:00.000Z",
"dateModified": "2025-07-19T20:30:00.000Z"
}
</script>
<!-- FAQ Schema -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "¿Cómo funciona la predicción de demanda con IA en inventarios?",
"acceptedAnswer": {
"@type": "Answer",
"text": "La IA analiza 50+ variables incluyendo históricos de ventas, estacionalidad, promociones, correlaciones entre productos y factores externos como clima y eventos para predecir demanda futura con 87% de precisión."
}
},
{
"@type": "Question",
"name": "¿Qué beneficios reales ofrece el inventario IA inteligente?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Las empresas reportan 40% reducción en costos de almacenamiento, 92% menos quiebres de stock, mejora del 60% en rotación de inventario, y liberación significativa de capital de trabajo para reinversión."
}
},
{
"@type": "Question",
"name": "¿Cuánto tiempo toma implementar inventario IA en Odoo?",
"acceptedAnswer": {
"@type": "Answer",
"text": "El proceso estructurado toma 12 semanas: 3 semanas de análisis y configuración, 5 semanas de entrenamiento y validación, y 4+ semanas de optimización continua con monitoreo automatizado."
}
},
{
"@type": "Question",
"name": "¿El sistema puede manejar productos perecederos y vencimientos?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Sí, incluye gestión inteligente de vencimientos con alertas tempranas, estrategias automáticas de liquidación, optimización FIFO/LIFO según producto, y análisis predictivo de mermas."
}
}
]
}
</script>
<style>
body { background: #1a1a1a; color: #e0e0e0; }
.article-content h1 { color: #FF6B35; font-size: 2.5rem; margin-bottom: 1rem; }
.article-content h2 { color: #FF6B35; font-size: 1.8rem; margin: 2rem 0 1rem 0; }
.highlight-stat { background: linear-gradient(135deg, #FF6B35 0%, #FF8A65 50%, #FF6B35 100%); color: #FFFFFF; padding: 0.2rem 0.5rem; border-radius: 6px; font-weight: 700; display: inline-block; margin: 0 0.2rem; }
.highlight-metric { background: rgba(255, 107, 53, 0.2); color: #FF6B35; padding: 0.1rem 0.3rem; border-radius: 4px; font-weight: 600; border: 1px solid rgba(255, 107, 53, 0.3); }
.feature-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; margin: 2rem 0; }
.feature-card { background: #2a2a2a; border: 2px solid #FF6B35; border-radius: 12px; padding: 1.5rem; }
.breadcrumbs { background: #2a2a2a; padding: 1rem; border-radius: 8px; margin-bottom: 2rem; }
.breadcrumbs a { color: #FF6B35; text-decoration: none; }
</style>
</head>
<body>
<script src="/components/header.min.js"></script>
<script>document.write(/*W6-static*/null);</script>
<nav class="breadcrumbs">
<a href="/">Início</a> <a href="/pt/odoo-ia/">Odoo IA</a> <span>Inventário de IA Inteligente</span>
</nav>
<div class="article-content">
<header>
<h1>Odoo Inventário de IA Inteligente: El Sistema Que Predice Qué Necesitas Antes Que Tú</h1>
<h2>Cómo la inteligencia artificial elimina quiebres de stock, reduce sobrecosto de inventario y optimiza tu capital de trabajo automáticamente</h2>
<p>Mientras tu competencia sigue contando productos manualmente y adivinando qué ordenar, tu inventario IA ya sabe que necesitarás 340 unidades del producto X en 15 días, considerando estacionalidad, tendencias de mercado, y hasta el clima. Esta es la diferencia entre <span class="highlight-stat">gestión reactiva</span> y <span class="highlight-metric">optimización predictiva</span>.</p>
</header>
<section>
<h2>¿Qué Es el Inventário de IA Inteligente en Odoo 2025?</h2>
<p>El <span class="highlight-metric">inventario inteligente</span> no es solo software que cuenta productos—es un sistema neural que aprende los patrones específicos de tu negocio, anticipa cambios en la demanda, y toma decisiones de reabastecimiento más inteligentes que la mayoría de gerentes de inventario.</p>
<p>Las empresas que implementan inventario IA reportan resultados dramáticos: <span class="highlight-stat">40% reducción</span> en costos de almacenamiento, <span class="highlight-metric">92% menos quiebres</span> de stock, y mejora del <span class="highlight-stat">60% en rotación</span> de inventario. Para lograr estos resultados, es crucial seguir una <a href="/pt/odoo-ia/implementacion-odoo-ia-guia-paso-a-paso-2025/" rel="nofollow noopener">implementación sistemática de IA</a> y tener una base sólida con un <a href="/pt/odoo/curso-odoo-aprender-completo-2025/" rel="nofollow noopener">dominio completo de Odoo</a>.</p>
<p>La ventaja real está en la liberación de capital: cuando tu inventario está optimizado, tienes más efectivo disponible para crecimiento en lugar de productos que se quedan en estantes.</p>
</section>
<section>
<h2>Funciones Clave del Inventário IA</h2>
<div class="feature-grid">
<div class="feature-card">
<h3>🔮 Predicción de Demanda Avanzada</h3>
<p>Algoritmos que analizan 50+ variables para predecir demanda futura con <span class="highlight-stat">87% de precisión</span>.</p>
<ul>
<li>Análisis de tendencias estacionales</li>
<li>Impacto de promociones en demanda</li>
<li>Correlaciones entre productos usando <a href="/pt/odoo-ia/odoo-motor-ia-engine-inteligencia-2025/" rel="nofollow noopener">motores de IA avanzados</a></li>
<li>Factores externos (clima, eventos, economía)</li>
</ul>
</div>
<div class="feature-card">
<h3>⚡ Reabastecimiento Automático</h3>
<p>El sistema genera órdenes de compra automáticamente considerando lead times, descuentos por volumen, y cash flow.</p>
<ul>
<li>Órdenes automáticas basadas en predicciones</li>
<li>Optimización de cantidades por descuentos</li>
<li>Coordinación con proveedores integrada mediante <a href="/pt/odoo-ia/odoo-openai-api-integracion-2025/" rel="nofollow noopener">APIs inteligentes</a></li>
<li>Alertas proactivas de decisiones críticas</li>
</ul>
</div>
<div class="feature-card">
<h3>📊 Optimización de Stock por Ubicación</h3>
<p>IA distribuye inventario entre almacenes y sucursales optimizando costos de transporte y tiempos de entrega.</p>
<ul>
<li>Distribución inteligente multi-almacén</li>
<li>Transferencias automáticas entre ubicaciones</li>
<li>Optimización de costos de transporte</li>
<li>Análisis de performance por ubicación</li>
</ul>
</div>
<div class="feature-card">
<h3>💰 Gestión Inteligente de Vencimientos</h3>
<p>Predicción y prevención de pérdidas por caducidad mediante análisis de rotación y estrategias de liquidación automáticas.</p>
<ul>
<li>Alertas tempranas de productos por vencer</li>
<li>Estrategias automáticas de liquidación con <a href="/pt/odoo-ia/odoo-ia-generativa-contenido-automatico-2025/" rel="nofollow noopener">contenido generado automáticamente</a></li>
<li>Optimización FIFO/LIFO según producto</li>
<li>Análisis de costos de merma con <a href="/pt/odoo-ia/odoo-ocr-ia-reconocimiento-documentos-2025/" rel="nofollow noopener">procesamiento automático de documentos</a></li>
</ul>
</div>
</div>
</section>
<section>
<h2>ROI Documentado: Casos Reales de Implementação</h2>
<p>Después de supervisar 180+ implementaciones de inventario IA, estos son los resultados consistentes:</p>
<div class="feature-card">
<h3>📈 Farmacia Regional - 45 Sucursales</h3>
<ul>
<li><strong>Problema:</strong> $180,000 mensuales en pérdidas por vencimientos</li>
<li><strong>Solución:</strong> IA predictiva con alertas de caducidad</li>
<li><strong>Resultados:</strong> <span class="highlight-stat">89% reducción</span> en mermas, <span class="highlight-metric">$156,000 ahorrados</span> mensualmente</li>
</ul>
</div>
<div class="feature-card">
<h3>🏭 Distribuidora Industrial - Multi-almacén</h3>
<ul>
<li><strong>Problema:</strong> Quiebres de stock del 23%, inventario desbalanceado</li>
<li><strong>Solución:</strong> Reabastecimiento automático con optimización por ubicación</li>
<li><strong>Resultados:</strong> Quiebres reducidos a <span class="highlight-stat">3%</span>, mejora del <span class="highlight-metric">45% en rotación</span></li>
</ul>
</div>
</section>
<section>
<h2>Implementação del Inventário IA: Hoja de Ruta</h2>
<p>La implementación exitosa del <span class="highlight-metric">inventario inteligente</span> sigue un proceso estructurado de 12 semanas:</p>
<div class="feature-card">
<h3>Fase 1: Análisis y Configuración (Semanas 1-3)</h3>
<ul>
<li>Auditoría de datos históricos de inventario</li>
<li>Configuración de parámetros base de IA</li>
<li>Integración con proveedores y sistemas existentes</li>
<li>Definición de reglas de negocio específicas</li>
</ul>
</div>
<div class="feature-card">
<h3>Fase 2: Entrenamiento y Validación (Semanas 4-8)</h3>
<ul>
<li>Entrenamiento de algoritmos con datos históricos</li>
<li>Validación de predicciones contra resultados reales</li>
<li>Ajuste fino de parámetros de sensibilidad</li>
<li>Implementação gradual de automatizaciones</li>
</ul>
</div>
<div class="feature-card">
<h3>Fase 3: Optimización Continua (Semanas 9-12+)</h3>
<ul>
<li>Monitoreo de performance y ajustes automáticos</li>
<li>Expansión a productos y categorías adicionales</li>
<li>Integración con analytics avanzados</li>
<li>Optimización basada en resultados medidos</li>
</ul>
</div>
</section>
<section itemscope itemtype="https://schema.org/FAQPage">
<h2>Preguntas Frecuentes: Inventário de IA Inteligente</h2>
<div itemscope itemprop="mainEntity" itemtype="https://schema.org/Question" class="feature-card">
<h3 itemprop="name">¿Cómo funciona la predicción de demanda con IA en inventarios?</h3>
<div itemscope itemprop="acceptedAnswer" itemtype="https://schema.org/Answer">
<div itemprop="text">
<p>La IA analiza <span class="highlight-stat">50+ variables</span> incluyendo históricos de ventas, estacionalidad, promociones, correlaciones entre productos y factores externos como clima y eventos para predecir demanda futura con <span class="highlight-metric">87% de precisión</span>. El sistema aprende continuamente de nuevos datos y ajusta sus predicciones automáticamente.</p>
</div>
</div>
</div>
<div itemscope itemprop="mainEntity" itemtype="https://schema.org/Question" class="feature-card">
<h3 itemprop="name">¿Qué beneficios reales ofrece el inventario IA inteligente?</h3>
<div itemscope itemprop="acceptedAnswer" itemtype="https://schema.org/Answer">
<div itemprop="text">
<p>Las empresas reportan <span class="highlight-stat">40% reducción</span> en costos de almacenamiento, <span class="highlight-metric">92% menos quiebres</span> de stock, mejora del <span class="highlight-stat">60% en rotación</span> de inventario, y liberación significativa de capital de trabajo para reinversión. Además, elimina errores humanos en decisiones de reabastecimiento.</p>
</div>
</div>
</div>
<div itemscope itemprop="mainEntity" itemtype="https://schema.org/Question" class="feature-card">
<h3 itemprop="name">¿Cuánto tiempo toma implementar inventario IA en Odoo?</h3>
<div itemscope itemprop="acceptedAnswer" itemtype="https://schema.org/Answer">
<div itemprop="text">
<p>El proceso estructurado toma <span class="highlight-metric">12 semanas</span>: 3 semanas de análisis y configuración, 5 semanas de entrenamiento y validación, y 4+ semanas de optimización continua con monitoreo automatizado. Los primeros resultados se ven desde la semana 4.</p>
</div>
</div>
</div>
<div itemscope itemprop="mainEntity" itemtype="https://schema.org/Question" class="feature-card">
<h3 itemprop="name">¿El sistema puede manejar productos perecederos y vencimientos?</h3>
<div itemscope itemprop="acceptedAnswer" itemtype="https://schema.org/Answer">
<div itemprop="text">
<p>Sí, incluye gestión inteligente de vencimientos con alertas tempranas, estrategias automáticas de liquidación, optimización FIFO/LIFO según producto, y análisis predictivo de mermas. Especialmente útil para farmacias y alimentaria.</p>
</div>
</div>
</div>
</section>
<footer>
<h2>El Futuro del Inventário Es Predictivo</h2>
<p>El <span class="highlight-metric">inventario IA inteligente</span> no es una mejora incremental—es un cambio fundamental en cómo las empresas gestionan capital de trabajo. En 2025, la diferencia competitiva radica en la velocidad y precisión de las decisiones de inventario.</p>
<p>Mientras tus competidores siguen reaccionando a quiebres de stock y acumulando inventario obsoleto, tu sistema IA ya optimizó cada decisión de reabastecimiento para maximizar disponibilidad, minimizar costos, y liberar capital para crecimiento. Esta optimización se potencia aún más cuando se integra con otros módulos inteligentes del ecosistema Odoo IA.</p>
<div class="feature-card">
<h3>🚀 Próximos Pasos Recomendados</h3>
<ul>
<li><strong>Auditoría de Inventário Actual:</strong> Documenta costos actuales de almacenamiento y quiebres</li>
<li><strong>Análisis de Datos Históricos:</strong> Evalúa calidad y volumen de datos disponibles</li>
<li><strong>Piloto Controlado:</strong> Implementa en categoría de productos específica</li>
<li><strong>Escalamiento Gradual:</strong> Expande a más productos según resultados medidos</li>
</ul>
</div>
</footer>
</div>
<script src="/components/eeat.min.js"></script>
<script>
document.write(createEEAT({
author: {
name: "Equipo Odoo Expertos",
title: "Consultora Senior en Sistemas ERP",
experience: "15+ años de experiencia en transformación digital"
},
publishDate: "19 de julio de 2025"
}));
</script>
<script src="/components/footer.min.js"></script>
<script>document.write(/*W6-static*/null);</script>
<script src="/js/cookie-banner.min.js"></script>
<!-- D3.js Library -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/7.8.5/d3.min.js"></script>
<!-- D3.js Visualizations -->
<script>
document.addEventListener('DOMContentLoaded', function() {
// Inventory prediction flow visualization
function createInventoryFlowChart() {
const section = document.querySelector('section:nth-of-type(2)');
if (section) {
const chartContainer = document.createElement('div');
chartContainer.className = 'feature-card';
chartContainer.id = 'inventory-flow-chart';
chartContainer.style.marginTop = '2rem';
chartContainer.innerHTML = '<h3>Flujo de Predicción de Inventário IA</h3>';
section.appendChild(chartContainer);
}
const container = d3.select("#inventory-flow-chart");
const width = 700;
const height = 300;
const svg = container.append("svg")
.attr("width", "100%")
.attr("height", height)
.attr("viewBox", `0 0 ${width} ${height}`);
const nodes = [
{id: "Datos Históricos", x: 80, y: 100, type: "input"},
{id: "Variables Externas", x: 80, y: 200, type: "input"},
{id: "IA Predictiva", x: 300, y: 150, type: "process"},
{id: "Predicción Demanda", x: 500, y: 100, type: "output"},
{id: "Orden Automática", x: 500, y: 200, type: "output"},
{id: "Optimización", x: 620, y: 150, type: "enhance"}
];
const links = [
{source: nodes[0], target: nodes[2]},
{source: nodes[1], target: nodes[2]},
{source: nodes[2], target: nodes[3]},
{source: nodes[2], target: nodes[4]},
{source: nodes[3], target: nodes[5]},
{source: nodes[4], target: nodes[5]}
];
const colorScale = {
input: "#FF6B35",
process: "#FF8A65",
output: "#E55A2B",
enhance: "#FFB74D"
};
// Draw links
svg.selectAll(".link")
.data(links)
.enter().append("line")
.attr("class", "link")
.attr("x1", d => d.source.x)
.attr("y1", d => d.source.y)
.attr("x2", d => d.target.x)
.attr("y2", d => d.target.y)
.attr("stroke", "#FF6B35")
.attr("stroke-width", 2);
// Draw nodes
svg.selectAll(".node")
.data(nodes)
.enter().append("circle")
.attr("class", "node")
.attr("cx", d => d.x)
.attr("cy", d => d.y)
.attr("r", 20)
.attr("fill", d => colorScale[d.type])
.attr("stroke", "#e0e0e0")
.attr("stroke-width", 2);
// Add labels
svg.selectAll(".label")
.data(nodes)
.enter().append("text")
.attr("class", "label")
.attr("x", d => d.x)
.attr("y", d => d.y + 35)
.attr("text-anchor", "middle")
.attr("fill", "#e0e0e0")
.attr("font-size", "11px")
.text(d => d.id);
}
// Inventory optimization metrics
function createOptimizationChart() {
const section = document.querySelector('section:nth-of-type(3)');
if (section) {
const chartContainer = document.createElement('div');
chartContainer.className = 'feature-card';
chartContainer.id = 'optimization-chart';
chartContainer.style.marginTop = '2rem';
chartContainer.innerHTML = '<h3>Métricas de Optimización de Inventário</h3>';
section.appendChild(chartContainer);
}
const container = d3.select("#optimization-chart");
const width = 600;
const height = 250;
const svg = container.append("svg")
.attr("width", "100%")
.attr("height", height)
.attr("viewBox", `0 0 ${width} ${height}`);
const beforeAfterData = [
{category: "Costos Almacen", before: 100, after: 60, improvement: 40},
{category: "Quiebres Stock", before: 100, after: 8, improvement: 92},
{category: "Rotación", before: 100, after: 160, improvement: 60},
{category: "Capital Trabajo", before: 100, after: 75, improvement: 25}
];
const xScale = d3.scaleBand()
.domain(beforeAfterData.map(d => d.category))
.range([50, width - 50])
.padding(0.2);
const yScale = d3.scaleLinear()
.domain([0, 160])
.range([height - 50, 50]);
// Before bars (baseline)
svg.selectAll(".before-bar")
.data(beforeAfterData)
.enter().append("rect")
.attr("class", "before-bar")
.attr("x", d => xScale(d.category))
.attr("y", d => yScale(d.before))
.attr("width", xScale.bandwidth() / 2)
.attr("height", d => height - 50 - yScale(d.before))
.attr("fill", "#8D2A0A")
.attr("stroke", "#e0e0e0")
.attr("stroke-width", 1);
// After bars (with IA)
svg.selectAll(".after-bar")
.data(beforeAfterData)
.enter().append("rect")
.attr("class", "after-bar")
.attr("x", d => xScale(d.category) + xScale.bandwidth() / 2)
.attr("y", d => yScale(d.after))
.attr("width", xScale.bandwidth() / 2)
.attr("height", d => height - 50 - yScale(d.after))
.attr("fill", "#FF6B35")
.attr("stroke", "#e0e0e0")
.attr("stroke-width", 1);
// Improvement labels
svg.selectAll(".improvement-label")
.data(beforeAfterData)
.enter().append("text")
.attr("class", "improvement-label")
.attr("x", d => xScale(d.category) + xScale.bandwidth()/2)
.attr("y", 40)
.attr("text-anchor", "middle")
.attr("fill", "#FF6B35")
.attr("font-weight", "bold")
.attr("font-size", "12px")
.text(d => `+${d.improvement}%`);
// Category labels
svg.selectAll(".category-label")
.data(beforeAfterData)
.enter().append("text")
.attr("class", "category-label")
.attr("x", d => xScale(d.category) + xScale.bandwidth()/2)
.attr("y", height - 20)
.attr("text-anchor", "middle")
.attr("fill", "#e0e0e0")
.attr("font-size", "10px")
.text(d => d.category);
// Legend
svg.append("rect")
.attr("x", width - 150)
.attr("y", 60)
.attr("width", 15)
.attr("height", 15)
.attr("fill", "#8D2A0A");
svg.append("text")
.attr("x", width - 130)
.attr("y", 72)
.attr("fill", "#e0e0e0")
.attr("font-size", "12px")
.text("Antes");
svg.append("rect")
.attr("x", width - 150)
.attr("y", 80)
.attr("width", 15)
.attr("height", 15)
.attr("fill", "#FF6B35");
svg.append("text")
.attr("x", width - 130)
.attr("y", 92)
.attr("fill", "#e0e0e0")
.attr("font-size", "12px")
.text("Con IA");
}
// Implementation timeline visualization
function createImplementationTimeline() {
const section = document.querySelector('section:nth-of-type(4)');
if (section) {
const chartContainer = document.createElement('div');
chartContainer.className = 'feature-card';
chartContainer.id = 'implementation-timeline';
chartContainer.style.marginTop = '2rem';
chartContainer.innerHTML = '<h3>Timeline de Implementação (12 Semanas)</h3>';
section.appendChild(chartContainer);
}
const container = d3.select("#implementation-timeline");
const width = 700;
const height = 200;
const svg = container.append("svg")
.attr("width", "100%")
.attr("height", height)
.attr("viewBox", `0 0 ${width} ${height}`);
const phases = [
{phase: "Análisis", weeks: 3, start: 0},
{phase: "Entrenamiento", weeks: 5, start: 3},
{phase: "Optimización", weeks: 4, start: 8}
];
const xScale = d3.scaleLinear()
.domain([0, 12])
.range([50, width - 50]);
const yScale = d3.scaleBand()
.domain(phases.map(d => d.phase))
.range([50, height - 50])
.padding(0.3);
const colorScale = d3.scaleOrdinal()
.range(["#FF6B35", "#FF8A65", "#E55A2B"]);
svg.selectAll(".timeline-bar")
.data(phases)
.enter().append("rect")
.attr("class", "timeline-bar")
.attr("x", d => xScale(d.start))
.attr("y", d => yScale(d.phase))
.attr("width", d => xScale(d.weeks) - xScale(0))
.attr("height", yScale.bandwidth())
.attr("fill", (d, i) => colorScale(i))
.attr("stroke", "#e0e0e0")
.attr("stroke-width", 1);
svg.selectAll(".timeline-label")
.data(phases)
.enter().append("text")
.attr("class", "timeline-label")
.attr("x", d => xScale(d.start) + (xScale(d.weeks) - xScale(0))/2)
.attr("y", d => yScale(d.phase) + yScale.bandwidth()/2)
.attr("text-anchor", "middle")
.attr("dy", "0.35em")
.attr("fill", "#1a1a1a")
.attr("font-weight", "bold")
.attr("font-size", "12px")
.text(d => `${d.phase} (${d.weeks}w)`);
// Add week markers
const weekMarkers = [0, 3, 6, 9, 12];
svg.selectAll(".week-marker")
.data(weekMarkers)
.enter().append("line")
.attr("class", "week-marker")
.attr("x1", d => xScale(d))
.attr("x2", d => xScale(d))
.attr("y1", 30)
.attr("y2", height - 30)
.attr("stroke", "#666")
.attr("stroke-width", 1)
.attr("stroke-dasharray", "2,2");
svg.selectAll(".week-label")
.data(weekMarkers)
.enter().append("text")
.attr("class", "week-label")
.attr("x", d => xScale(d))
.attr("y", 25)
.attr("text-anchor", "middle")
.attr("fill", "#e0e0e0")
.attr("font-size", "10px")
.text(d => `Sem ${d}`);
}
// Initialize all visualizations
createInventoryFlowChart();
createOptimizationChart();
createImplementationTimeline();
});
</script>
</body>
</html>