cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Helper II
Helper II

Advise on best approach -

I all, I am looking fo some guidance on best practice.

I am creating a student dashboard. I have a big data table that contains data from an annual student test covering multiple years. I can select a student via basic slicer and diplay current subjects and the series of  annual scores.

However I need to show student performance in the context of the other students for that year either as a box or violin plot (ie. Year 5 student vs all Year 5 students in 2013, Year 6 student vs all year 6 students in 2014 etc). The slicer reduces the data set to just the student so the box/violin ends up with one data point.

I can easily create an alternate table using SQL but it seems so wrong to not do this in PBI. What would be the best practice approach? I just need a pointer and can run with it from there.

Thanks in advance.

1 ACCEPTED SOLUTION
Resolver III
Resolver III

Hey @lutho 

 

  As @amitchandak  mentioned it would be best to have some sample data and a sample output to answer this question.

 

Without this, here is some sample data I have included to try and meet your solution

 

westwrightj_0-1605207343644.png

 

Also I've gone ahead and duplicate this table in the query editor and paried it down just to unique Student-Year combinations

westwrightj_1-1605209055596.png

 

The tables are connected by year and one filters the other in a one way many to many relationship

 

westwrightj_2-1605209080295.png

 

Now we can write a measure like this

 

Students From Same Year as Selected = 

var TheStudent = VALUES('Test Data (2)'[Student])

var TheYear = CALCULATE(MAX('Test Data'[Year]), 'Test Data'[Student] in TheStudent)

return

CALCULATE(MAX('Test Data'[Score]), 'Test Data'[Year] = TheYear)

 

This will allow us to make a violin chart that will adjust based on the year of our selected student

 

westwrightj_3-1605209158882.png

 

westwrightj_4-1605209168404.png

 

If you wanted to also see the selected student's score you could add a card with this measure

 

Student Score = 

var TheSelectedStudent = SELECTEDVALUE('Test Data (2)'[Student])

return

CALCULATE(MAX('Test Data'[Score]), 'Test Data'[Student] = TheSelectedStudent)

westwrightj_5-1605209261538.png

 

 

 

westwrightj_6-1605209271142.png

 

 

Let me know if this helps or if you were looking for different functionality.

 

 

View solution in original post

2 REPLIES 2
Resolver III
Resolver III

Hey @lutho 

 

  As @amitchandak  mentioned it would be best to have some sample data and a sample output to answer this question.

 

Without this, here is some sample data I have included to try and meet your solution

 

westwrightj_0-1605207343644.png

 

Also I've gone ahead and duplicate this table in the query editor and paried it down just to unique Student-Year combinations

westwrightj_1-1605209055596.png

 

The tables are connected by year and one filters the other in a one way many to many relationship

 

westwrightj_2-1605209080295.png

 

Now we can write a measure like this

 

Students From Same Year as Selected = 

var TheStudent = VALUES('Test Data (2)'[Student])

var TheYear = CALCULATE(MAX('Test Data'[Year]), 'Test Data'[Student] in TheStudent)

return

CALCULATE(MAX('Test Data'[Score]), 'Test Data'[Year] = TheYear)

 

This will allow us to make a violin chart that will adjust based on the year of our selected student

 

westwrightj_3-1605209158882.png

 

westwrightj_4-1605209168404.png

 

If you wanted to also see the selected student's score you could add a card with this measure

 

Student Score = 

var TheSelectedStudent = SELECTEDVALUE('Test Data (2)'[Student])

return

CALCULATE(MAX('Test Data'[Score]), 'Test Data'[Student] = TheSelectedStudent)

westwrightj_5-1605209261538.png

 

 

 

westwrightj_6-1605209271142.png

 

 

Let me know if this helps or if you were looking for different functionality.

 

 

View solution in original post

Super User IV
Super User IV

@lutho ,Can you share sample data and sample output in table format? Or a sample pbix after removing sensitive data.



Did I answer your question? Mark my post as a solution! Appreciate your Kudos!!
Dashboard of My Blogs !! YouTube Channel !! Connect on Linkedin

Proud to be a Super User!

Helpful resources

Announcements
secondImage

Congratulations!

We are excited to announce the Power BI Super Users!

Wave Release 2

Check out the updates in Power BI.

Overview of Power BI 2020 release wave 2!

Microsoft Ignite

Microsoft Ignite

Join digitally, March 2–4, 2021 to explore new tech that's ready to implement. Experience the keynote in mixed reality through AltspaceVR!

secondImage

The largest Power BI virtual conference

100+ sessions, 100+ speakers, Product managers, MVPs, and experts. All about Power BI. Attend online or watch the recordings.

Top Solution Authors
Top Kudoed Authors