Forum Discussion
Need help on Time Line chart
I need to create a Line chart of average time per month. I have a table that has month and year in one column and in another column i have hour, minute and second H:MM:SS ie, 0:01:55 format. I need to create a line chart that will give average of time per month and the time in the line chart should show in the below format,
H:MM:SS ie, 0:01:55.
when i create a line chart i am getting count of Average time and i not able to change to Dont Summarise also. this option itself is not showing.
Could anyone help me on this ?
I am new to power Bi, Step by step process of explanation will be much helpful.
Thanks in Advance 😀
Hi, Anonymous ;
Unfortunately, that seems unlikely at the moment. The problem is that metrics that do not return integer or decimal values cannot be used as values in bar/line charts.
The best thing you can do right now is to add metrics as a tooltip.
So, given a metric [Duration in Seconds] that returns an integer or decimal value, create a new metric:
1.change to seconds
second = var _hour= CONVERT( LEFT(MAX('Table'[DateTime.2]), FIND(":",MAX('Table'[DateTime.2]),1)-1),INTEGER) var _min= MID( MAX('Table'[DateTime.2]), FIND(":",MAX('Table'[DateTime.2]),1)+1,2) var _sec= RIGHT(MAX('Table'[DateTime.2]),2) return _hour*3600+_min*60+_sec2.averge the seconds every month. then change it to hour.
aver = AVERAGEX(FILTER(ALL('Table'),EOMONTH([DateTime.1],0)=EOMONTH(MAX('Table'[DateTime.1]),0)),[second]) /36003.format it to hh:mm:ss as tooltip
formatave = INT([aver]) &":"&INT(([aver]*3600-INT([aver])*3600)/60) &":"&FORMAT( INT( MOD([aver]*3600,60)),"00")The final output is shown below:
Best Regards,
Community Support Team_ Yalan Wu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
2 Replies
- v-yalanwu-msftCommunity Support
Hi, Anonymous ;
Unfortunately, that seems unlikely at the moment. The problem is that metrics that do not return integer or decimal values cannot be used as values in bar/line charts.
The best thing you can do right now is to add metrics as a tooltip.
So, given a metric [Duration in Seconds] that returns an integer or decimal value, create a new metric:
1.change to seconds
second = var _hour= CONVERT( LEFT(MAX('Table'[DateTime.2]), FIND(":",MAX('Table'[DateTime.2]),1)-1),INTEGER) var _min= MID( MAX('Table'[DateTime.2]), FIND(":",MAX('Table'[DateTime.2]),1)+1,2) var _sec= RIGHT(MAX('Table'[DateTime.2]),2) return _hour*3600+_min*60+_sec2.averge the seconds every month. then change it to hour.
aver = AVERAGEX(FILTER(ALL('Table'),EOMONTH([DateTime.1],0)=EOMONTH(MAX('Table'[DateTime.1]),0)),[second]) /36003.format it to hh:mm:ss as tooltip
formatave = INT([aver]) &":"&INT(([aver]*3600-INT([aver])*3600)/60) &":"&FORMAT( INT( MOD([aver]*3600,60)),"00")The final output is shown below:
Best Regards,
Community Support Team_ Yalan Wu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.- AnonymousNot applicable
Thanks v-yalanwu-msft for the help. 👍