@@ -41,7 +41,8 @@ const ChartVisualization = ({
41
41
selectedData,
42
42
selectedCells,
43
43
data,
44
- order
44
+ order,
45
+ columns
45
46
} ) => {
46
47
const [ chartType , setChartType ] = useState ( 'bar' ) ;
47
48
@@ -64,9 +65,11 @@ const ChartVisualization = ({
64
65
let isTimeSeries = false ;
65
66
66
67
// Só considerar time series se temos múltiplas colunas E a primeira coluna é explicitamente data/datetime
67
- if ( colEnd > colStart && firstColumnName ) {
68
- // Verificar se o nome da coluna sugere data
69
- const isDateColumn = / ^ ( d a t e | t i m e | c r e a t e d | u p d a t e d | w h e n | a t ) $ / i. test ( firstColumnName ) ||
68
+ if ( colEnd > colStart && firstColumnName && columns ) {
69
+ // Verificar primeiro o tipo da coluna no schema
70
+ const firstColumnType = columns [ firstColumnName ] ?. type ;
71
+ const isDateColumn = firstColumnType === 'Date' ||
72
+ / ^ ( d a t e | t i m e | c r e a t e d | u p d a t e d | w h e n | a t ) $ / i. test ( firstColumnName ) ||
70
73
firstColumnName . toLowerCase ( ) . includes ( 'date' ) ||
71
74
firstColumnName . toLowerCase ( ) . includes ( 'time' ) ;
72
75
@@ -83,13 +86,10 @@ const ChartVisualization = ({
83
86
}
84
87
}
85
88
86
- isTimeSeries = dateCount >= totalRows * 0.8 ; // 80 % devem ser datas válidas
89
+ isTimeSeries = dateCount >= totalRows * 0.6 ; // 60 % devem ser datas válidas (mais permissivo)
87
90
}
88
91
}
89
92
90
- // Forçar number series se não temos evidências claras de time series
91
- isTimeSeries = false ; // TEMPORÁRIO: forçar number series para debug
92
-
93
93
if ( isTimeSeries && colEnd > colStart ) {
94
94
// Time Series: primeira coluna é data, outras são números
95
95
const datasets = [ ] ;
@@ -324,7 +324,7 @@ const ChartVisualization = ({
324
324
} ;
325
325
}
326
326
}
327
- } , [ selectedData , selectedCells , data , order ] ) ;
327
+ } , [ selectedData , selectedCells , data , order , columns ] ) ;
328
328
329
329
const renderChart = ( ) => {
330
330
if ( chartData . type === 'timeSeries' ) {
0 commit comments