Observatório de dados/BI/G-Charts
Ferramentas de BI: |
Componentes |
Componente de ferramenta de BI. Google Charts
Carga de CSV
[editar | editar código-fonte]A carga de arquivo CVS, para poder usar por exemplo como array em um gráfico simples, requer uso de outros componentes, e tem o problema adicional do CORS (Cross-origin resource sharing), tendo em vista que o arquivo CSV em URL de domínio diferente é o caso típico. A solução encontrada está exemplificada no código abaixo:
const url_dadosCSV = 'https://raw.githubusercontent.com/specialisterne-br/observatorio-dados/master/exemplos01/exemplo01-bom.csv'
const url_allowCORS = 'https://cors-anywhere.herokuapp.com/'
Papa.parse(url_allowCORS + url_dadosCSV , {
download: true,
dynamicTyping: true,
complete: function(results) {
let head = results.data.shift()
google.charts.setOnLoadCallback(
function() { drawChart(results.data,head); }
);
}
})
Além da necessidade do componente de leitura do CSV (aqui adotado o PapaParse), é necessária a solução "allow CORS" (aqui adotado cors-anywhere.herokuapp.com). Como a maior parte das soluções de carga de dados em Javascript é assíncrona, deve-se tomar o cuidado de fazer a chamada ao google.charts somente depois que os dados do CSV foram carregados na array. No trecho de código a chamada foi encapsulada pela função drawChart().
Links externos
[editar | editar código-fonte]- roda leitura de CSV via file://etc.html e javascript (ex.
d3.csv()
).
http://testingfreak.com/how-to-fix-cross-origin-request-security-cors-error-in-firefox-chrome-and-ie/