Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 单击按钮,在ionic中使用D3.js显示其他图形_Jquery_Angularjs_If Statement_D3.js_Ionic Framework - Fatal编程技术网

Jquery 单击按钮,在ionic中使用D3.js显示其他图形

Jquery 单击按钮,在ionic中使用D3.js显示其他图形,jquery,angularjs,if-statement,d3.js,ionic-framework,Jquery,Angularjs,If Statement,D3.js,Ionic Framework,这是两个折线图的代码,默认情况下,它应该显示带有“close”值的图,单击Data2按钮,它应该显示带有“close2”值的图。我如何做到这一点。在代码中的何处添加if-else语句 var-app=angular.module('myApp',[]); app.controller('myController',['$scope', 职能($范围){ //在作用域中设置数据 $scope.data=[{ “日期”:“2012-04-30T18:30:00.000Z”, “结束”:58.13,

这是两个折线图的代码,默认情况下,它应该显示带有“close”值的图,单击Data2按钮,它应该显示带有“close2”值的图。我如何做到这一点。在代码中的何处添加if-else语句

var-app=angular.module('myApp',[]);
app.controller('myController',['$scope',
职能($范围){
//在作用域中设置数据
$scope.data=[{
“日期”:“2012-04-30T18:30:00.000Z”,
“结束”:58.13,
“关闭2”:95,
“ews”:3,
}, {
“日期”:“2012-04-29T18:30:00.000Z”,
“结束”:53.98,
“关闭2”:120,
“ews”:3
}, {
“日期”:“2012-04-26T18:30:00.000Z”,
“结束”:67,
“关闭2”:185,
“ews”:3
}, {
“日期”:“2012-04-24T18:30:00.000Z”,
“关闭”:99,
“关闭2”:220,
“ews”:2
}, {
“日期”:“2012-04-23T18:30:00.000Z”,
“结束”:80,
“关闭2”:60,
“ews”:3
}, {
“日期”:“2012-04-22T18:30:00.000Z”,
“关闭”:167,
“关闭2”:90,
“ews”:0
}, {
“日期”:“2012-04-19T18:30:00.000Z”,
“关闭”:234,
“关闭2”:90,
“ews”:3
}, {
“日期”:“2012-04-18T18:30:00.000Z”,
“关闭”:101,
“关闭2”:60,
“ews”:1
}, {
“日期”:“2012-04-17T18:30:00.000Z”,
“结束”:92,
“关闭2”:70,
“ews”:2
}, {
“日期”:“2012-04-16T18:30:00.000Z”,
“结束”:96,
“关闭2”:78,
“ews”:2
}, {
“日期”:“2012-04-15T18:30:00.000Z”,
“结束”:58,
“关闭2”:88,
“ews”:3
}, {
“日期”:“2012-04-12T18:30:00.000Z”,
“结束”:105,
“关闭2”:80,
“ews”:1
}, {
“日期”:“2012-04-11T18:30:00.000Z”,
“关闭”:238,
“关闭2”:120,
“ews”:3
}, {
“日期”:“2012-03-29T18:30:00.000Z”,
“关闭”:108,
“关闭2”:68,
“ews”:1
}, {
“日期”:“2012-03-28818:30:00.000Z”,
“结束”:96,
“关闭2”:98,
“ews”:2
}, {
“日期”:“2012-03-27T18:30:00.000Z”,
“关闭”:198,
“关闭2”:60,
“ews”:0
}];
}
]);
应用指令('linearChart',函数(){
返回{
限制:“EA”,
链接:功能(范围、要素、属性){
var数据=scope.data;
//设置画布/图形的尺寸
var保证金={
前30名,
右:20,,
底部:80,
左:50
},
宽度=600-边距。左侧-边距。右侧,
高度=300-margin.top-margin.bottom;
//解析日期/时间
var parseDate=d3.time.format(“%d-%b-%y”).parse;
//设定范围
var x=d3.time.scale().range([0,width]);
变量y=d3.scale.linear().range([height,0]);
//定义轴
var xAxis=d3.svg.axis().scale(x)
.orient(“底部”).ticks(5).tickFormat(d3.time.format(“%d%b”));
var yAxis=d3.svg.axis().scale(y)
.方向(“左”)。勾号(5);
//界定界线
var valueline=d3.svg.line()
.x(功能(d){
返回x(新日期(d.Date));
})
.y(功能(d){
返回y(d.close);
});
//定义线条2
var valueline2=d3.svg.line()
.x(功能(d){
返回x(新日期(d.Date));
})
.y(功能(d){
返回y(d.2);
});
//添加svg画布
var svg=d3.选择(“svg”)
.attr(“宽度”,宽度+边距。左侧+边距。右侧)
.attr(“高度”,高度+边距。顶部+边距。底部)
.附加(“g”)
.attr(“转换”,
“翻译(“+margin.left+”,“+margin.top+”);
//缩放数据的范围
x、 域(d3)。范围(数据,函数(d){
返回新日期(d.Date);
}));
y、 域([0,d3.max(数据,函数(d)){
返回d.close;
})]);
//添加valueline路径。
追加(“路径”)
.attr(“类”、“行”)
.attr(“d”,valueline(数据));
追加(“路径”)
.attr(“类”、“行”)
.attr(“d”,valueline2(数据));
//y轴的文本标签
svg.append(“文本”)
.attr(“变换”、“旋转(-90)”)
.attr(“y”,0-页边距。左)
.attr(“x”,0-(高度/2))
.attr(“dy”、“1em”)
.style(“文本锚定”、“中间”)
.文本(“价值”);
//x轴的文本标签
svg.append(“文本”)
.attr(“x”,宽度/2)
.attr(“y”,高度+70)
.style(“文本锚定”、“中间”)
.attr(“类”、“xlabel”)
.文本(“日期”);
//添加散点图
svg.selectAll(“点”)
.数据(数据)
.enter().append(“圆”)
.attr(“r”,3.5)
.样式(“填充”,功能(d){
如果(d.ews==0)返回“绿色”;
如果(d.ews==1)返回“黄色”;
如果(d.ews==2)返回“橙色”;
如果(d.ews==3)返回“红色”;
})
.attr(“cx”,功能(d){
返回x(新日期(d.Date));
})
.attr(“cy”,函数(d){
返回y(d.close);
}).on(“鼠标悬停”,函数(){
返回d3.select(#mytooltip”).style(“可见性”、“可见”);//使工具提示可见
})
.on(“mousemove”,函数(d){
console.log()
d3.选择(“#mytooltip”).style(“顶部”、(d3.鼠标(此)[1]+10)+“px”).style(“左侧”、(d3.鼠标(此)[0]+10)+“px”);
d3.选择(“#mytooltip”)。选择(“#ttdate”)。文本(函数(){
返回d.date;//将日期值设置为工具提示
});
d3.选择(“#我的工具提示”).select(“#ttclose”).text(函数(){
返回d.close;//将日期值设置为工具提示
});
返回;
})
.on(“mouseout”,函数(){
返回d3.select(#mytooltip”).style(“可见性”、“隐藏”);//隐藏工具提示
});
//添加散点图2
svg.selectAll(“点”)
.数据
// Add the valueline path.
svg.append("path")
    .attr("class", "line")
    .attr("id", "valueline")
    .attr("d", valueline(data));

 svg.append("path")
    .attr("class", "line")
    .attr("id", "valueline2")
    .attr("d", valueline2(data));
svg.selectAll("dot")
    .data(data)
    .enter().append("circle")
    .attr("r", 3.5)
    .attr("class", "valueline")

svg.selectAll("dot")
    .data(data)
    .enter().append("circle")
    .attr("r", 3.5)
    .attr("class", "valueline2")
<button class="databutton" data-id="valueline">Data 1</button>
<button class="databutton" data-id="valueline2">Data 2</button>
$(document).ready(function(){
    $("#valueline").css("opacity",0);
    $("#valueline2").css("opacity",0);
    $(".valueline").hide();
    $(".valueline2").hide();

    $(".databutton").on("click", function(){
        var id = $(this).attr("data-id");

        $("#"+id).css("opacity", 1);
        $("."+id).show();

        if(id == "valueline")
        {
            $("#valueline2").css("opacity", 0);
            $(".valueline2").hide();
        }
        else
        {
            $("#valueline").css("opacity", 0);
            $(".valueline").hide();
        }

    });
});
<button ng-click="makeData1()">Data 1</button>
<button  ng-click="makeData2()">Data 2</button>
    $scope.makeData2 = function() {
        $scope.data = [{
        "date": "2012-04-30T18:30:00.000Z",
            "close": 58.13,
            "ews": 3,
    }, {
        "date": "2012-04-29T18:30:00.000Z",
            "close": 53.98,
            "ews": 3
    }, {
        "date": "2012-04-26T18:30:00.000Z",
            "close": 67,
            "ews": 3
    }, {
        "date": "2012-04-24T18:30:00.000Z",
            "close": 99,
            "ews": 2
    }, {
        "date": "2012-04-23T18:30:00.000Z",
            "close": 80,
            "ews": 3
    }, { ...
}
   $scope.makeData1 = function () {
        $scope.data = [{
            "date": "2012-04-30T18:30:00.000Z",
                "close": 95,
                "ews": 3,
        }, {
            "date": "2012-04-29T18:30:00.000Z",
                "close": 120,
                "ews": 3
        }, {
            "date": "2012-04-26T18:30:00.000Z",
                "close": 185,
                "ews": 3
        }, {
            "date": "2012-04-24T18:30:00.000Z",
                "close": 220,
                "ews": 2
        }, {
 link: function (scope, elem, attrs) {
            //var data = scope.data;
            // Set the dimensions of the canvas / graph
            scope.$watch('data', function () {
                var margin = {
                    top: 30,
                    right: 20,
                    bottom: 80,
                    left: 50
                },