首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SAP UI5: x轴上viz.frame图的形成

SAP UI5: x轴上viz.frame图的形成
EN

Stack Overflow用户
提问于 2017-02-23 15:00:57
回答 1查看 3.6K关注 0票数 0

我目前正在用sensortag测试HCP。Sensortag每60年代发送一次温度到HCP,并且图表工作得很好。唯一的问题是,我只看到图表中的最后30个值,因为时间戳是axis的值。

  1. 图的格式有哪些可能性?我能把这些数据值加起来吗?这样x轴就显示在每小时f.e。?
  2. 例如,是否还可以为每天添加第二行。这意味着,颜色1的数据点显示day1的温度,颜色2表示第2天等,x轴显示从0-24小时的时间。

编辑:好,让它用下面的代码从x轴格式化小时:

代码语言:javascript
复制
Axis : { scale: { fixedRange : true, minValue : "0:00", maxValue : "24:00" } } –

因此,第2点仍然开放,我如何格式化度量?

代码语言:javascript
复制
measures: [
        {
            name: "C_SENSORTEMP",
            value: "{C_SENSORTEMP}"
        },
        {
            name: "C_SENSORHUMIDITY",
            value: "{C_SENSORHUMIDITY}"
        }

    ],

谢谢大家

代码语言:javascript
复制
var vizFrame = new sap.viz.ui5.controls.VizFrame("graph").addStyleClass("sapUiSmallMarginBegin").addStyleClass("sapUiSmallMarginTop");
    vizFrame.setWidth("900px");
    var oDataset = new sap.viz.ui5.data.FlattenedDataset({
        dimensions: [
            {
                name: "Date",
                value: {
                    path: "G_CREATED",
                    formatter: function(val){
                        if (val == null) {
                            return "string null";
                        }                           
                        var date = new Date(parseInt(val.substr(6,20)));
                        var dd = date.getDate();
                        var mm = date.getMonth()+1; //January is 0!
                        var yyyy = date.getFullYear();
                        var hr = date.getHours();
                        var min = date.getMinutes();
                        var sec = date.getSeconds();
                        var fromdate1 = dd+'/'+mm+'/'+yyyy + " " + hr + ":" + min + ":" + sec;
                        return fromdate1;
                    }
                }
            }
        ],
        measures: [
            {
                name: "C_SENSORTEMP",
                value: "{C_SENSORTEMP}"
            },
            {
                name: "C_SENSORHUMIDITY",
                value: "{C_SENSORHUMIDITY}"
            }

        ],
        data: {
            path: "/items"

        }
    });
    vizFrame.setDataset(oDataset);
    vizFrame.setVizType('line');

    vizFrame.setVizProperties({
        plotArea: {
            colorPalette :  ["#5cbae6", "#b6d957", "#fac364"]
            },
        categoryAxis: {
            title: {
                text: "Date/Time"
            }
        },
        valueAxis: {
            title: {
                text: "temp/humidity"
            }
        },
        title: {
            visible:false
        }
    });

    var feedValueAxis = new sap.viz.ui5.controls.common.feeds.FeedItem({
          'uid': "valueAxis",
          'type': "Measure",
          'values': ["C_SENSORTEMP", "C_SENSORHUMIDITY"]
        }), 
        feedCategoryAxis = new sap.viz.ui5.controls.common.feeds.FeedItem({
          'uid': "categoryAxis",
          'type': "Dimension",
          'values': ["Date"]
        });

    vizFrame.addFeed(feedValueAxis);
    vizFrame.addFeed(feedCategoryAxis);

    var container = new sap.m.VBox({
        items: [vizFrame],
        width: "100%",
        height: "100%",
        alignItems: "Center"
    });
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-27 10:51:14

问题得到解决:

1)在模型中限制了30个数据集。

2) X轴-标度值:

代码语言:javascript
复制
 yAxis : {scale: {
                              fixedRange : true,
                              minValue : "15",
                              maxValue : "30"
                    }},

以颜色表示的每个日期的类别/组:

代码语言:javascript
复制
var oDataset = new sap.viz.ui5.data.FlattenedDataset({
dimensions: [{
name: "hour",value: "{hour}"},
name: "date", value: "{date}"}
...
var feedValueAxis = new sap.viz.ui5.controls.common.feeds.FeedItem({
          'uid': "valueAxis",
          'type': "Measure",
          'values': ["SENSORTEMP"]
        }), 
        feedCategoryAxis = new sap.viz.ui5.controls.common.feeds.FeedItem({
          'uid': "categoryAxis",
          'type': "Dimension",
          'values': ["hour"]
        }),
        feedColor = new sap.viz.ui5.controls.common.feeds.FeedItem({
            "uid": "color",
            "type": "Dimension",
            "values": ["date"]
 });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42419291

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档