Javascript amcharts获取鼠标的实际X值(日期)

Javascript amcharts获取鼠标的实际X值(日期),javascript,html,amcharts,Javascript,Html,Amcharts,我遵循了教程: 但是我没有得到正确的值。 代码如下: <!DOCTYPE html> <html> <head> <meta charset="ISO-8859-1"> <title>Sensor Diagramms</title> <script src="amcharts/amcharts.js" type="text/javascript"></script> <script src="a

我遵循了教程: 但是我没有得到正确的值。 代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Sensor Diagramms</title>
<script src="amcharts/amcharts.js" type="text/javascript"></script>
<script src="amcharts/serial.js" type="text/javascript"></script>
<script src="amcharts/themes/black.js" type="text/javascript"></script>
<!-- amCharts javascript code -->
    <script type="text/javascript">
        var valueAxis;
        var chart;
        var chartData = [];
        var chartCursor;
        var date;
        loadCSV("MagnetField.txt");
        AmCharts.ready(function(){
            // SERIAL CHART
            chart = new AmCharts.AmSerialChart();
            chart.type = "serial";
            chart.pathToImages = "amcharts/images/";
            chart.dataProvider = chartData;
            chart.categoryField = "date";
            chart.dataDateFormat = "DD-MM-YYYY HH:NN:SS.QQQ";

            // AXES
            // category
            var categoryAxis = chart.categoryAxis;
            categoryAxis.minPeriod = "fff";
            categoryAxis.parseDates = true;

            // CURSOR
            chartCursor = new AmCharts.ChartCursor();
            chartCursor.categoryBalloonDateFormat= "HH:NN:SS.QQQ";
            chartCursor.valueLineEnabled = true;
            chartCursor.bulletsEnabled = true;
            chartCursor.bulletSize = 2;
            chartCursor.oneBalloonOnly = true;
            chartCursor.addListener("moved", handleMove);
            chart.addChartCursor(chartCursor);

            // SCROLLBAR
            var chartScrollbar = new AmCharts.ChartScrollbar();
            chartScrollbar.usePeriod = "fff";
            chartScrollbar.autoGridCount = true;
            chartScrollbar.color = "#000000";
            chart.addChartScrollbar(chartScrollbar);

            // GRAPHS
            var graph = new AmCharts.AmGraph();
            graph.bullet = "round";
            graph.title = "x-Axis";
            graph.xField = "date";
            graph.valueField = "xaxis";
            graph.hideBulletsCount = 50;
            graph.balloonText = "[[value]] uT";
            graph.lineColor = "#b5030d";
            chart.addGraph(graph);

            var graph2 = new AmCharts.AmGraph();
            graph2.bullet = "square";
            graph2.title = "y-Axis";
            graph2.xField = "date";
            graph2.valueField = "xaxis";
            graph2.hideBulletsCount = 50;
            graph2.balloonText = "[[value]] uT";
            graph2.lineColor = "#0352b5";
            chart.addGraph(graph2);

            var graph3 = new AmCharts.AmGraph();
            graph3.bullet = "diamond";
            graph3.title = "z-Axis";
            graph3.xField = "date";
            graph3.valueField = "zaxis";
            graph3.hideBulletsCount = 50;
            graph3.balloonText = "[[value]] uT";
            graph3.lineColor = "#12B500";
            chart.addGraph(graph3);

            // value Axes
            valueAxis = new AmCharts.ValueAxis();
            valueAxis.title = "Magnetic Field"
            valueAxis.unit = "uT";
            chart.addValueAxis(valueAxis);

            // Legend
            var legend = new AmCharts.AmLegend();
            legend.useGraphSettings = true;
            legend.align = "center";
            legend.valueText = "[[open]]";
            chart.addLegend(legend);

            chart.titles = [{"id": "Title-1", "size": 15, "text": "Magnetic Sensor"}];

            chart.write("chartdiv");

        })


        function handleMove(event){
            var xValue = AmCharts.roundTo(valueAxis.coordinateToValue(event.x - valueAxis.axisX), 2);
            //var yValue = AmCharts.formatDate(valueAxis.axisX, "DD/MM/YYYY");
            var yValue = event.x - valueAxis.axisX;
            console.log("handleMove");
            document.getElementById('values').innerHTML = "x:" + xValue + " "+ yValue;

        }

        function loadCSV(file) {
            if (window.XMLHttpRequest) {
                // IE7+, Firefox, Chrome, Opera, Safari
                var request = new XMLHttpRequest();
            } else {
                // code for IE6, IE5
                var request = new ActiveXObject('Microsoft.XMLHTTP');
            }
            // load
            request.open('GET', file, false);
            request.send();
            parseCSV(request.responseText);
        }
        function parseCSV(data) {
            //replace UNIX new lines
            data = data.replace (/\r\n/g, "\n");
            //replace MAC new lines
            data = data.replace (/\r/g, "\n");
            //split into rows
            var rows = data.split("\n");
            // loop through all rows
            for (var i = 0; i < rows.length; i++) {
                // this line helps to skip empty rows
                if (rows[i]) {
                    // our columns are separated by comma
                    var column = rows[i].split(",");

                    // column is array now 
                    // first item is date
                    date = timeConverter(column[0]);
                    // second item is value of the second column
                    var value = column[1].substring(2, column[1].length);
                    var value2 = column[2].substring(2, column[2].length);
                    var value3 = column[3].substring(2, column[3].length);

                    // create object which contains all these items:
                    var dataObject = {
                        date: date,
                        xaxis: value,
                        yaxis: value2,
                        zaxis: value3,
                        Balloon: "Time: "+ date.substring(11,23)
                    };
                    // add object to chartData array
                    chartData.push(dataObject);

                }
            }

            return chartData
        }
        function setPanSelect() {
            if (document.getElementById("rb1").checked) {
                chartCursor.pan = false;
                chartCursor.zoomable = true;

            } else {
                chartCursor.pan = true;
            }
            chart.validateNow();
        }
        function timeConverter(UNIX_timestamp){
            var test = UNIX_timestamp;
            var a = new Date(test.substring(0,10)*1000);
            var months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
             var year = a.getFullYear();
             var month = (a.getMonth() + 1) < 10 ? '0' + (a.getMonth() + 1) : (a.getMonth() + 1) ;
             var date = a.getDate();
             var hour = a.getHours();
             var min = a.getMinutes() < 10 ? '0' + a.getMinutes() : a.getMinutes();
             var sec = a.getSeconds() < 10 ? '0' + a.getSeconds() : a.getSeconds();
             var msec = test.substring(10,13);
             var time = date + "-" + month + "-" + year + " " + hour + ":" + min + ":" + sec + "." + msec;
             return time;
         }

    </script>
</head>

<body>
<div align="center" id="chartdiv" style="margin:auto; width: 80%; height: 500px; background-color: #FFFFFF;" ></div>
<br>
<br>
<div id="values"></div>
</body>
</html>

传感器示意图
var价值轴;
var图;
var chartData=[];
var-chartCursor;
风险值日期;
loadCSV(“MagnetField.txt”);
AmCharts.ready(函数(){
//序列图
chart=新的AmCharts.AmSerialChart();
chart.type=“串行”;
chart.pathToImages=“amcharts/images/”;
chart.dataProvider=chartData;
chart.categoryField=“日期”;
chart.dataDateFormat=“DD-MM-YYYY HH:NN:SS.QQQ”;
//斧头
//类别
var categoryAxis=chart.categoryAxis;
categoryAxis.minPeriod=“fff”;
categoryAxis.parseDates=true;
//光标
chartCursor=新建AmCharts.chartCursor();
chartCursor.categoryBalloonDateFormat=“HH:NN:SS.QQQ”;
chartCursor.valueLineEnabled=true;
chartCursor.bulletsEnabled=true;
chartCursor.bulletSize=2;
chartCursor.oneballoodonly=true;
chartCursor.addListener(“移动”,handleMove);
chart.addChartCursor(chartCursor);
//滚动条
var chartScrollbar=新的AmCharts.chartScrollbar();
chartScrollbar.usePeriod=“fff”;
chartScrollbar.autogidcount=true;
chartScrollbar.color=“#000000”;
chart.addChartScrollbar(chartScrollbar);
//图表
var-graph=新的AmCharts.AmGraph();
graph.bullet=“圆形”;
graph.title=“x轴”;
graph.xField=“日期”;
graph.valueField=“xaxis”;
graph.hidebulletscont=50;
graph.ballootText=“[[value]]uT”;
graph.lineColor=“#b5030d”;
图表。添加图表(图形);
var graph2=新的AmCharts.AmGraph();
图2.bullet=“正方形”;
图2.title=“y轴”;
graph2.xField=“日期”;
graph2.valueField=“xaxis”;
图2.hidebulletscont=50;
graph2.ballootText=“[[value]]uT”;
graph2.lineColor=“#0352b5”;
图.添加图(图2);
var graph3=新的AmCharts.AmGraph();
图3.bullet=“菱形”;
图3.title=“z轴”;
graph3.xField=“日期”;
graph3.valueField=“zaxis”;
图3.hidebulletscont=50;
graph3.ballootText=“[[value]]uT”;
graph3.lineColor=“#12B500”;
图.添加图(图3);
//价值轴
valueAxis=新的AmCharts.valueAxis();
valueAxis.title=“磁场”
valueAxis.unit=“uT”;
图表.添加valueAxis(valueAxis);
//传奇
var legend=new AmCharts.AmLegend();
legend.useGraphSettings=true;
legend.align=“中心”;
legend.valueText=“[[open]]”;
图表。添加图例(图例);
chart.titles=[{“id”:“Title-1”,“size”:15,“text”:“Magnetic Sensor”}];
chart.write(“chartdiv”);
})
功能手柄移动(事件){
var xValue=AmCharts.roundTo(valueAxis.coordinateToValue(event.x-valueAxis.axix),2);
//var yValue=AmCharts.formatDate(valueAxis.axix,“DD/MM/YYYY”);
var yValue=event.x—valueAxis.axix;
控制台日志(“handleMove”);
document.getElementById('values').innerHTML=“x:”+xValue+“”+yValue;
}
函数loadCSV(文件){
if(window.XMLHttpRequest){
//IE7+、Firefox、Chrome、Opera、Safari
var request=new XMLHttpRequest();
}否则{
//IE6、IE5的代码
var request=newactivexobject('Microsoft.XMLHTTP');
}
//装载
打开('GET',file,false);
request.send();
parseCSV(request.responseText);
}
函数parseCSV(数据){
//更换UNIX新线路
data=data.replace(/\r\n/g,“\n”);
//更换新线路
data=data.replace(/\r/g,“\n”);
//分成几行
var rows=data.split(“\n”);
//循环遍历所有行
对于(变量i=0;i$("#chartdiv").mousemove(function () {
    var categoryIndex = chart.categoryAxis.xToIndex(event.x));
});