GVKun编程网logo

如何从两列中计算新列值及其在Power bi中的动态总和?(powerbi新建列等于两列之和)

25

本文将带您了解关于如何从两列中计算新列值及其在Powerbi中的动态总和?的新内容,同时我们还将为您解释powerbi新建列等于两列之和的相关知识,另外,我们还将为您提供关于d3.js悬停工具提示未在

本文将带您了解关于如何从两列中计算新列值及其在Power bi中的动态总和?的新内容,同时我们还将为您解释powerbi新建列等于两列之和的相关知识,另外,我们还将为您提供关于d3.js悬停工具提示未在Power BI中呈现、datetime – 如何在Power BI中的日期层次结构中包含“时间”、Power BI - KPI 视觉对象中的动态“目标”标签、Power BI dax 添加新列,仅保留重复项并在两行之间计算的实用信息。

本文目录一览:

如何从两列中计算新列值及其在Power bi中的动态总和?(powerbi新建列等于两列之和)

如何从两列中计算新列值及其在Power bi中的动态总和?(powerbi新建列等于两列之和)

就像您说的那样,表中有一个索引列,让您的数据如下所示-

enter image description here

现在,在表中的测量之后创建此表-

total_sa = 

var initial_amount = 500
var current_index = MIN('Table'[Index])

var cumulative_inc_sa = 
CALCULATE(
    SUM('Table'[Incremental SA]),FILTER(
        ALL('Table'),'Table'[Index] <= current_index
    )
) + 0

var cumulative_ref_sa = 
CALCULATE(
    SUM('Table'[Referral SA]),'Table'[Index] <= current_index
    )
) + 0

RETURN initial_amount + cumulative_inc_sa + cumulative_ref_sa

这是您的最终输出-

enter image description here

,

在您的示例中,并假设所有事务均按索引排序,这看起来像一个简单的总计:

Total_SA =
VAR currentIndex = SELECTEDVALUE('Table'[Index])
RETURN
 CONCATENATE("RM",CONVERT(
       CALCULATE(SUM(CONVERT(SUBSTITUTE('Table'[Incremental SA],"RM",""),INTEGER)) 
               + SUM(CONVERT(SUBSTITUTE('Table'[Referral SA],INTEGER)),ALL('Table'),'Table'[Index] <= currentIndex
       ) + 500,STRING))

我建议您另外使用SA的int值创建2列,因为这会使代码更具可读性。

d3.js悬停工具提示未在Power BI中呈现

d3.js悬停工具提示未在Power BI中呈现

如何解决d3.js悬停工具提示未在Power BI中呈现?

我有一个使用d3构建的散点图。在浏览器中进行测试时,我已经获得了可以正常使用的工具提示,但是在power bi中构建了相同的d3可视化效果时,却无法将鼠标悬停在某个点上来渲染工具提示?是否还有其他人遇到过此问题,或者在其他地方使用power bi记录了此问题?提前致谢。我从此处构建的示例在这里:

https://www.d3-graph-gallery.com/graph/scatter_basic.html

var margin = {top: 10,right: 30,bottom: 30,left: 80},width = pbi.width - margin.left - margin.right,height = pbi.height - margin.top - margin.bottom;



// ALTER: Replaced the d3.tsv function with the pbi variant: pbi.dsv
pbi.dsv(function(letters) {

var svg = d3.select("#chart")
.attr("width",width + margin.left + margin.right)
.attr("height",height + margin.top + margin.bottom)
.append("g")
.attr("transform","translate(" + margin.left + "," + margin.top + ")");


// Add the tooltip container to the vis container
        // it''s invisible and its position/contents are defined during mouSEOver
    var tooltip = d3.select("#chart").append("div")
        .attr("class","tooltip")
        .style("opacity",0);





var x = d3.scale.linear()
.domain([0,4000])
.range([0,width]);

var y = d3.scale.linear()
.domain([0,500000])
.range([height,0]);




svg.append("g")
        .attr("class","x axis")
        .attr("transform","translate(0," + height + ")")
        .call(d3.svg.axis().scale(x).orient("bottom"));

svg.append("g")
    .attr("class","y axis")
    .call(d3.svg.axis().scale(y).orient("left"));

svg.append(''g'')
.selectAll("dot")
.data(letters)
.enter()
.append("circle")
  .attr("cx",function (d) { return x(d.grlivarea); } )
  .attr("cy",function (d) { return y(d.saleprice); } )
  .attr("r",1.5)
  .style("fill","#69b3a2")
.on("mouSEOver",function(data) {
            d3.select(this).attr("r",5)
            d3.select(this).style("stroke","000000")
            d3.select(this).style("stroke-width","2px")
            d3.select(''.tooltip'')
            tooltip.transition()
                .duration(200)
                .style("opacity",.8);
            tooltip.html("tooltip!")
                
        })


.on("mouSEOut",function(data) {
                d3.select(this).attr("r",1.5)
                d3.select(this).style("stroke","000000")
                d3.select(this).style("stroke-width","0px")
            
        })


});

CSS:

  body {
    font: 10px sans-serif;
}



.axis path,.axis line {
    fill: none;
    stroke: #000;
    shape-rendering: crispEdges;
}

.tooltip {
    word-wrap: normal;
    position: absolute;
    text-align: center;
    min-height: 20px;
    min-width: 30px;                      
    padding: 2px;               
    font: 14px;      
    color: #fff;
    background-color: rgba(51,51,.85);
    border: solid thin black;

 }

    .tooltip.show {
    opacity: 0.9;
} 

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

datetime – 如何在Power BI中的日期层次结构中包含“时间”

datetime – 如何在Power BI中的日期层次结构中包含“时间”

我正在撰写Power BI的报告.我的数据模型中的一个表收集传感器数据.它包含以下列:

> Serial(int),即123456789
>时间戳(日期时间),即12/20/2016 12:04:23 PM
>读(十进制)即123.456

每隔几分钟添加一条新记录,当前读数来自传感器.

Power BI会自动为日期时间列创建层次结构,其中包括年,季度,月和日.因此,当您在报表中添加视觉效果时,可以轻松深入查看每个级别.

我想在层次结构中包含数据的“时间”部分,以便您可以在“日期”之后再向下钻取一个级别,并查看该期间的详细读数.

我已经设置了一个Date表,使用CALENDaraUTO()函数,添加了所有相应的列,并将其与我的Readings表相关联,以便按日期汇总数据 – 效果很好.但它不包括“时间”维度.

我查看了以下SO问题,但他们没有帮助:

Time-based drilldowns in Power BI powered by Azure Data Warehouse

Creating time factors in PowerBI

我也发现了这篇文章,但令人困惑:

Power BI Date & Time Dimension Toolkit

有任何想法吗?

谢谢!

解决方法

您需要单独的日期和时间.时间表.您不希望将时间放入日期表中,因为时间每天都在重复.

时间维度与日期维度是相同的主体,除了代替每天的行,每分钟或每秒都会有一行(取决于您想要的精确度 – 我不建议包括第二行除非你绝对需要它,因为它会大大增加你需要的行数 – 影响性能).时间表中没有提及日期.

例如.

Time     | Time Text| Hour | Minute | AM/PM
---------|----------|------|--------|------
12:00 AM | 12:00 AM | 12   | 00     | AM
12:01 AM | 12:01 AM | 12   | 01     | AM
12:02 AM | 12:02 AM | 12   | 02     | AM
...      | ...      | ...  | ...    | ...

我包含一个时间/文本列,因为Power BI习惯于将1899年的日期添加到时间数据类型中.如果它们对您有帮助,您可以添加其他列.

在您的事实表中,您需要将日期时间列拆分为单独的日期和时间段.时间列,以便您可以将日期加入日期表&到时间表的时间.时间可能需要转换为最接近的圆形分钟或秒,以便数据中的每次都对应于时间表中的一行.

值得保留但隐藏数据中的原始日期时间字段,以防您以后想要计算跨越天数的持续时间.

在Power BI中,您可以在轴上的月/日属性下添加时间属性(或小时(和分钟)属性),以生成可从年份>钻取的柱形图.季度>月份>一天>小时>分钟. Power BI并不关心属性来自不同的表.

您可以在此处阅读有关时间维度的更多信息:http://www.kimballgroup.com/2004/02/design-tip-51-latest-thinking-on-time-dimension-tables/

希望这可以帮助.

Power BI - KPI 视觉对象中的动态“目标”标签

Power BI - KPI 视觉对象中的动态“目标”标签

我也非常喜欢这个功能。不幸的是,它不存在。前往 https://ideas.powerbi.com/ideas/ 并提交。

作为一种可能的解决方法,您可以删除标签文本并将度量放入卡片视觉对象中,然后将其对齐。这不是一个很好的选择,因为如果用户点击它,它就不会在焦点模式下。可悲的是,还有一些其他的想法帖子将多个视觉效果组合成一个单一的焦点模式,但他们的投票很少。如果您不想让用户使用,您当然可以关闭焦点模式。

Power BI dax 添加新列,仅保留重复项并在两行之间计算

Power BI dax 添加新列,仅保留重复项并在两行之间计算

如何解决Power BI dax 添加新列,仅保留重复项并在两行之间计算?

我从另一个 20210211_event 创建了一个表并添加了一个列 (id_event)。

newtable_summarize_addcol = 
ADDCOLUMNS(
    SUMMARIZE(
        FILTER(''20210211_event'',CONTAINsstRING(''20210211_event''[details],"SD") || CONTAINsstRING(''20210211_event''[details],"TC")
        && ''20210211_event''[event] in {"Announcement","state changed"}
        ),''20210211_event''[ID],''20210211_event''[event],''20210211_event''[time],''20210211_event''[trk],''20210211_event''[code],''20210211_event''[trn],''20210211_event''[charcteristics],''20210211_event''[details]
        ),"id_event",SUBSTITUTE(
        SUBSTITUTE(CONCATENATE([code]&"-",CONCATENATE([trn]&"-",PATHITEM(SUBSTITUTE([charcteristics],","|"),6))),":","")," ","")
)


我得到了这个新列的多个重复项。
如何仅保留重复项,因为对于相同的 id_event,我必须计算列事件为“状态更改”和“公告”的行的增量时间。
只是有时我也有几个“公告”行,在这种情况下我必须接受最后一个公告。
增量 = 19:30 - 19:26 = 4 分钟
增量 = 15:31 - 15:30 = 1 分钟

ID 事件 时间 trk 代码 trn 详情 id_event
79286031 状态改变 11-02-21 00:00 4 784 2E01994 SD 784-2E01994-0001
79633082 公告 11-02-21 19:26 3 1034 2E01719 TC/D - 2E01719 - IC 1034-2E01719-1931
79634430 状态改变 11-02-21 19:30 3 1034 2E01719 SD 1034-2E01719-1931
79479611 状态改变 11-02-21 12:30 3 1034 2E01712 SD 1034-2E01712-1231
79500003 状态改变 11-02-21 13:31 3 1034 2E01713 SD 1034-2E01713-1331
79536423 公告 11-02-21 15:26 5 1034 2E01715 TC/D - 2E01715 - IC 1034-2E01715-1531
79537831 公告 11-02-21 15:30 5 1034 2E01715 D3/TC - 2E01715 - IC 1034-2E01715-1531
79538027 状态改变 11-02-21 15:31 5 1034 2E01715 SD 1034-2E01715-1531
79560061 状态改变 11-02-21 16:29 3 1034 2E01716 SD 1034-2E01716-1629
79586481 状态改变 11-02-21 17:31 4 1034 2E01717 SD 1034-2E01717-1731

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

我们今天的关于如何从两列中计算新列值及其在Power bi中的动态总和?powerbi新建列等于两列之和的分享已经告一段落,感谢您的关注,如果您想了解更多关于d3.js悬停工具提示未在Power BI中呈现、datetime – 如何在Power BI中的日期层次结构中包含“时间”、Power BI - KPI 视觉对象中的动态“目标”标签、Power BI dax 添加新列,仅保留重复项并在两行之间计算的相关信息,请在本站查询。

本文标签: