繁体   English   中英

通过使用javascript从excel文件中读取excel数据来绘制折线图

[英]draw a linechart by reading excel data from excel file using javascript

这是我的Excel文件如下==

数据

20.248602 18.54032 18.254036 15.217833 13.194518 17.521723 17.78833 24.018597 18.401508 24.46464 20.752457 22.570473 17.870035 22.474863 20.783422 24.075064 17.72947 20.202723 16.776543 19.087515 7.232176 8.508578 7.5457883 10.0660925 13.344348 5.5784864 5.3469315 17.087952

我正在尝试从excel文件中读取exceldata,并使用这些数据我想使用javascript。来绘制折线图,​​但是即使我从excel中读取了exceldata,我也无法弄清楚我将如何使用该数据绘制图表不使用ActiveXObject的工作表。这是我的代码==

function Upload() 
{  
    var fileUpload = document.getElementById("fileUpload");  
    var regex = /^([a-zA-Z0-9\s_\\.\-:])+(.csv|.txt)$/;  
  if (regex.test(fileUpload.value.toLowerCase())) 
        {  
            if (typeof(FileReader) != "undefined") 
            {  
                var reader = new FileReader();  
                reader.onload = function(e) 
                {  
                    var table = document.createElement("table");  
                    var rows = e.target.result.split("\n");  
                    for (var i = 0; i < rows.length; i++) 
                        {  
                            var row = table.insertRow(-1);  
                            var cells = rows[i].split(",");  
                            for (var j = 0; j < cells.length; j++) 

                            {  
                                var cell = row.insertCell(-1);  
                                cell.innerHTML = cells[j];  
                            }  
                        }  
                    var dvCSV = document.getElementById("dvCSV");  
                    dvCSV.innerHTML = "";
                    dvCSV.appendChild(table);

                //  dvCSV.appendChild("Workdate \t Data \t Status");  

                }  


            reader.readAsText(fileUpload.files[0]);  
        } 
        else 
            {  
                alert("This browser does not support HTML5.");  
            }  
} 
    else 
    {  
        alert("Please upload a valid CSV file.");  
    }  
} 
</script> 
<body>
<input type="file" id="fileUpload" />
<input type="button" id="upload" value="Upload" onclick = "Upload()" />
<hr />

<div id="dvCSV">

</div>

请任何人帮我...

这是关于此问题的另一种观点,您可以在Funfun Excel加载项的帮助下直接在Excel中使用JavaScript,而不是使用JavaScript读取Excel文件。 基本上,Funfun是允许您在Excel中使用JavaScript的工具,因此您可以使用Chart.js之类的库从电子表格中的数据绘制图表。

首先,您需要对数据进行一些整理,如下所示(我仅以10个数据点为例)

在此处输入图片说明

然后,这是在Excel中使用JavaScript所需执行的一些步骤。

1)。 从Office加载项存储中插入Funfun加载项

在此处输入图片说明

2)。 创建一个新的Funfun或从Funfun在线编辑器中加载示例。 如果创建新的funfun,则可以编写自己的JavaScript代码。 在这种情况下,我已经使用JavaScript和Chart.js在Funfun在线编辑器中制作了一个示例。 您可以直接从下面的URL加载代码。

https://www.funfun.io/1/edit/5a36a1ad45ac15144af3fdfd

在此处输入图片说明

3)。 就像在其他任何JavaScript编辑器中一样编写JavaScrip代码。 在此步骤中,为了直接使用电子表格中的数据,您需要编写一些JSON I / O以使Excel单元格引用。 该值在Setting-short中的位置 但这只是几行。 对于这种情况,JSON I / O值为:

{
    "data": "=B2:K2",
    "label": "=B1:K1"
}

您可以查看Funfun文档以获取更多说明。

4)。 运行代码以绘制图表

玩得开心:)

在此处输入图片说明

披露:我是Funfun的开发人员。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM