Showing posts with label (Power) Business Intelligence. Show all posts
Showing posts with label (Power) Business Intelligence. Show all posts

1 Feb 2026

Power BI dashboard Messi Goals Tracker with new PBIP and PBIR file format

 #95  Power BI dashboard Messi Goals Tracker with new PBIP and PBIR file format

In 2026, the new Power BI default file format will be PBIR (JSON text format), which facilitates version control.
NB: for more details about this, see e.g.:

https://jihwanpowerbifabric.wixsite.com/supplychainflow/post/why-pbir-becoming-default-in-jan-2026-is-a-milestone

I wanted to try this out, so I made a new Messi Goals Tracker dashboard, using the PBIP (Power BI project) file format, that includes a PBIR-file for the report part, and a TMDL-file for the semantic model part.
NB: for earlier versions of Messi Goals Tracker dashboards, which I made with Google Looker Studio and Tableau, see these posts:

https://worktimesheet2014.blogspot.com/2021/01/messi-goal-tracker-dashboard-in-google.html

https://worktimesheet2014.blogspot.com/2025/08/tabelau-dashboard-messi-goals-tracker.html

Here is the Power BI dashboard:


And here is a video that I made about the dashboard:


This video shows a ´master class´penalty goal that Messi made in 2025 with Inter Miami.
And in this video you can see another, very special, penalty goal which Messi/Suarez made for Barcelona in 2016, in a way Cruyff did for Ajax in 1982 (also included in the video).

For version-control, I use the Git-functionality in MS Visual Studio Code. A nice feature it has that with Copilot, you can generate the content for the commits.

Here an example of a measure that I added to the Semantic Model in Power BI and the traces of this in Visual Code and GitHub:






And here you can see the PBIR-file with the code of the Info-page in the Power BI report:



If you enjoyed this post and want to make a small donation, you can do this with the Paypal Donate button (at the top right of this post) or via BuyMeAcoffee .

Follow me on LinkedIn


Downloads

*1: Power BI project file (PBIP)

https://github.com/mvanreek/messi-goals-powerbi-dashboard

*2: Power BI  classic file format (PBIX):

https://drive.google.com/file/d/1j1MkiD_n0fDKBH9z8cXPFFtiRYlWdJUb/view?usp=sharing



 



22 Sept 2025

Power BI report ´Big 3 of Tennis´with qualitative data and the Power BI custom visual Card Browser

 #93 Power BI report ´Big 3 of Tennis´ with qualitative data and the Power BI custom visual Card Browser

The other day, a friend asked me if I could help with a dashboard for his work that should facilitate data-exploration of the results of a survey, which had just qualitative data. So the dashboard was not supposed to be the typical ´pivot-table dashboard´ with measures, so quantitive data (e.g. sales) and some dimensions (e.g. Product, Customer, Date), but more a ´Power Point interactive dashboard´.

I checked on the web if there were examples of Power BI dashboards with qualitative data, and found this:

https://community.fabric.microsoft.com/t5/Data-Stories-Gallery/Productivity-Hacks-Transforming-Text-using-Power-BI/m-p/1429945

This dashboard is made by DiscoverEI , that converted a 107 pages (e-)book into an interactive Power BI report. As they say: 

"Power BI is not just limited to visualising quantitative data, it is also a fantastic data storytelling tool for transforming large amounts of text (qualitative data) into an interactive dashboard"

Another intersting example of this, is the (public) dashboard they made for the project ´Environmental Data Storytelling - Gippsland Water's Urban Water Strategy´:

https://app.powerbi.com/view?r=eyJrIjoiMzQzODNlYzUtYTdjZC00NWJkLWJiYzAtNzkwM2RhNzhhOTc3IiwidCI6IjYwMjI4YjdjLTM5MzQtNDMxMC1hMjdkLTI1MzZkZDFiZGY5ZCJ9&pageName=ReportSection6e03d48d26968609e577

NB for more info on this project, see:

https://www.gippswater.com.au/uws

https://www.youtube.com/watch?v=CW3rdjX5d-g

In their dashboard, I saw the Card Browser Power BI custom visual which I thought could be interesting to use into the prototype dashboard for my friend. 

First I created with ChatGPT the dataset for my report, so with some properties of the ´Big 3 of Tennis´, Federer, Nadal and Djokovic, e.g. favourite surface (clay, grass, hardcourt), left/right handed, playing-style (baseline, all court) etc. Then I made the Power BI report for this data, so using the Card Browser visual:



And in animated gif format:



NB: the data of this report is correct for Federer (retired in 2022) and Nadal (retired in 2024), but a bit outdated for Djokovic, who is still active and has now (Sept. 2025) 100 ATP titles, making hem part of the group of 3 tennis players with 100(+) ATP-titles, with Federer (103 titles) and Conners (109 titles)

And for a (longer) video with a demo of this dashboard, see:

https://youtu.be/Xdzq6BeRBGE?si=szSqUA1iA_tjw8C6

NB: at the end of my video, there is a fragment of the match:

Rafael Nadal vs Roger Federer - Battle of Surfaces 2007, an exhibition match where half of the court was of clay (the favourite surface of Nadal) and the other half was of grass (the favourite surface of Federer) , source:

https://www.youtube.com/watch?v=QVDelvwMWow

In my Power BI report I also added a page that shows a more normal use of Power BI :)


On the web, you can find discussions on who´s the real GOAT of tennis, e.g. :

https://www.reddit.com/r/tennis/comments/wrn4zj/the_goat_debate_is_probably_going_to_forever_be/

and for the ones who like Nadal best, you might like this other post that I made after Nadal retired:

To conclude, here are 2 more nice examples of ´Power Point dashboards´ (Power BI reports) with qualitative data, made by Ecorys:

https://poseidon.safe-europe.eu/dashboard - Dashboard with anti-corruption practices in the EU seaports supply chain 

https://fightagainstcorruption.eu/Dashboard - Dashboard with anti-aorruption practices in the EU, as described in ´Handbook of good practices in the fight against corruption´.

For these dashboards, a lot of attention was paid to the design of the user interface, and in this video of Greg Deckler, you can learn more about the UX-design work for a Power BI report, for which he uses in this very nice dashboard:

NB: Deckler participates with this dashboard in The Power BI DataViz World Championships 2025, and on this Fabric/Power BI Community page, you can find work of other participants of the FabCon event, like:


https://community.fabric.microsoft.com/t5/Contests-Gallery/Europe-Data-Heroes-Unite/td-p/4800077
- datastory telling in comic-book format :)

If you enjoyed this post and want to make a small donation, you can do this with the Paypal Donate button (at the top right of this post) or via BuyMeAcoffee .

Follow me on LinkedIn


Downloads

Power BI report Big 3 of Tennis


10 Jun 2025

End-to-end analysis of participants race Cross de Invierno 2023 with Microsoft Fabric (and Power BI)

 #91 End-to-end analysis of participants race Cross de Invierno 2023 with Microsoft Fabric (and Power BI)

In this old post I wrote about the run Cross de Invierno 2023 in Madrid I which I participated, which included an analysis of the finish-times, in Excel.
In this new post I used the data of the this run again, but this time for an analysis of the participants of schools and athletic-clubs, and now I used Microsoft Fabric. 
Fabric is Microsoft's quite new SAAS data analytics platform (it went GA in Nov.2023). It's a suite of tools to facilitate end-to-end analysis of data, and includes Power BI, One Lake, Data Factory (Data Pipeline, Dataflow), Synapse Warehouse and Lakehouse, Spark Notebooks etc. Fabric is made for 'personas' as Data Engineer, Data Scientist, Business Analyst etc., for which there are different built-in workloads ('experiences').
For more info about Fabric, see e.g:

https://learn.microsoft.com/en-in/fabric/get-started/microsoft-fabric-overview

https://youtu.be/J4i5lcROJcs?si=ZPo-mgnmQx8eRPg2
NB: in min. 19:16 there's a good picture of the Fabric architecture.

Evolutionary History of Microsoft Fabric - Spreadsheets to Lakehouse

 

The Power BI report that I made has these race-participants stats:  


The results of the race are published in several PDF-files, and for my analysis, I used 2 files, with the results of all men and women, so all adults (categories senior and junior). I converted these PDF-files to Excel and uploaded them in my Onedrive. I then used a Data Pipeline with 'activity' Dataflow Gen2 (with PowerQuery) to load the data from the Excel-files into a (Synapse) Lakehouse:



A Lakehouse is a data asset of OneLake, the central storage place of all data loaded in Fabric. 
All data in OneLake is stored in the Delta Parquet format, an open data format that can be read by all engines in Fabric (e.g. Power BI, using Direct Lake mode), which looks like this :

https://parquetreader.com/ 


NB: 

-note that the files are in the OneLake-folder, the 'OneDrive for data', see:
https://youtu.be/4NbuG1JBq60?feature=shared

-for more info about Onelake, see:
https://radacad.com/what-is-onelake-in-microsoft-fabric-and-why-you-should-care

-for more info about Delta Parquet format, see:
https://data-mozart.com/parquet-file-format-everything-you-need-to-know/


I made a Notebook to query the tables that I created in Onelake (Lakehouse), using the pyspark Python-library:  


And another notebook with the sempy-Python library. with which a PowerBI semantic model can be queried, using DAX: 


I created in a Fabric Warehouse the view RunnersAll, to combine the data from the 2 tables MenAll and WomenAll, with this SQL (run in the LakeHouse's SQL-endpoint):


 


In Fabric there's a Visual Query Editor (PowerQuery) that can generate the SQL for you, here an example to get a list of all teams of both men and women runners: 

 

And the generated SQL:


Note that in this (generated) SQL "DISTINCT .. UNION ALL" is used, where I would have used UNION (which filters out the duplicates, no separate DISTINCT needed).
 

I made some other (dimension-)tables that I then added in this Power BI Semantic Model (star-schema):


And this model was the source for this Power BI report:


The table in this dashboard (PBIX-report) with the details of the runners is a long list to scroll through.
A better way to show (long) lists are paginated reports (RDL-report). There are 2 ways to make a paginated report: 
 

*1: in the Power BI Service, using the semantic model, and a query in DAX: 




*2: in Power BI Reportbuilder, using the SQL-endpoint of Fabric Lakehouse/Warehouse, and a query in SQL (report shows top 3 runners per category):


The query for the dataset in this report can be made in SQL or the Query Designer (that generates SQL):


NB: for a good post about PBIX-reports ('dashboards') vs RDL-reports ('classic' paginated reports), see:

https://sqlserverbi.blog/2022/02/04/when-to-use-paginated-reports-vs-interactive-power-bi-reports/  


To see if the schools that participated in the run were all coming from my neighbourhood (Ciudad de los Poetas) where the race was held (park Dehesa de la Villa),  I made this PBIX-report:

MS Fabric supports version-control in Git, see column Git-status 'Synced' : 


I worked on this project in Dec.2023 and Jan.2024 (with a free Fabric trial license), so shortly after 
MS Fabric went 'GA', although actually it was still a beta-version back then... But what is the status now, in Jun.2025, is MS Fabric 'production-ready' now? It looks it still isn't:

https://www.brentozar.com/archive/2025/05/fabric-is-just-plain-unreliable-and-microsofts-hiding-it/ 

https://www.linkedin.com/posts/gregdeckler_mshgqm-is-microsoft-hiding-fabrics-flaws-activity-7331365183698698243--9iE/

Microsoft Hates Greg - MS Fabric Performance & login issues

Microsoft Fabric: 10 Reasons It’s Still Not the Right Choice in 2025 

And is Microsoft's idea to bundle all their data-tools (as Power BI and Azure Synapse) in one suite (Fabric), a good idea? Some more critical opinions:

https://www.linkedin.com/pulse/microsoft-fabric-repeating-sins-past-greg-deckler-mrrae

Curbal - I can explain Microsoft Fabric with ONE WORD


I googled with "MS Fabric (customer) success stories 2025" and "MS Fabric market adoption 2025", and found e.g.: 

https://www.reddit.com/r/MicrosoftFabric/comments/1jz4dxz/microsoft_fabric_success_stories/ 

https://news.microsoft.com/en-au/features/melbourne-airport-is-driving-innovation-across-operations-with-microsoft-fabric-for-data-analytics-and-reporting/

https://www.microsoft.com/en/customers/story/23991-lumen-microsoft-fabric 

https://www.reddit.com/r/MicrosoftFabric/comments/1fne380/seeking_insights_on_microsoft_fabric_adoption/

https://powerbi.microsoft.com/en-us/blog/microsoft-named-a-leader-in-the-2024-gartner-magic-quadrant-for-analytics-and-bi-platforms/ 

MSHGMQ - Microsoft Fabric and the Uncanny Valley 

As they say in this post:

https://www.red-gate.com/simple-talk/databases/sql-server/bi-sql-server/microsoft-fabric-the-land-of-wizards-and-trolls/?utm_source=pocket_shared 

 "Only time will tell if Fabric stands the test of time against competitive technologies.[e.g. Databricks or Snowflake]." 

 

If you enjoyed this post and want to make a small donation, you can do this with the Paypal Donate button (at the top right of this post) or via BuyMeAcoffee .

Follow me on LinkedIn



Downloads

PowerBI Report Runners-count 

PowerBI report Schools of runners 

Paginated report Runners 

Excel-export Paginated report Runners 

Notebook pyspark

Notebook sempy




19 Jun 2024

PowerBI-report UEFA Champions League Titles by Team, history (seasons 1955-56 to 2023-24, winner: Real Madrid)

#89 PowerBI-report UEFA Champions League Titles by Team, history (seasons 1955-56 to 2023-24, winner: Real Madrid)


On 1/6/2024, Real Madrid won the UEFA Champions League (UCL) final from Borussia Dortmund, and with this its 15th UCL-title (!).

I made a Power BI dashboard with all teams that won the UCL (before 1992 called European Cup), from the first season, 1955-56 until now (season 2023-24), here some screenshots.
NB: at the bottom of this blog-post I included the dashboard (embedded, interactive version) + download-URL.




With filter on Country = Netherlands (country #4 in ranking #UCL-victories per country):


 

You can do a drill-through for Real Madrid (-bar) to see the details of all Real Madrid's UCL-victories:







To see how Real Madrid got to these 15 UCL-titles over time, I made a chart with the cumulative # titles.
In this chart you can see e.g. that Real Madrid won the first 5 UCL-finales in a row (with Real Madrid -legend Di Stefano).





NB: The DAX-formula for measure cumulative # titles, I got with help from ChatGPT:


 

 

 

With this decomposition tree chart, you can see a breakdown of the 15 UCL-titles, where I chose the path:  Country (Spain) > Team (Real Madrid) > Coach (Ancelotti, trainer with most UCL-victories, total 5, 3 with Real Madrid and 2 with AC Milan) and Season/Year (2023-24)



To make a Power BI dashboard as this, normally I'd search for the dataset on internet, e.g. Wikipedia, and then transform the dataset for my reporting-needs (e.g. in Power Query). But now there are generative AI tools/chatbots as OpenAI's ChatGPT,  which I used, that can create the dataset you want, or close to it.
For the dataset that ChatGPT generated for me, it missed data for UCL season 2023-24, because ChatGPT has a cutoff date of Jan.2022, so the data for that season I had to add manually.
ChatGPT created some Python-code for the dataset, which can be loaded in Power BI (as it also told me):




 

 

I also asked ChatGPT which visual it would recommend for this data, and it even draw the chart itself (something that was not possible with ChatGPT 3.5, but now with ChatGPT 4o it is):




So these new AI-tools can make the life of a data-analyst and data-journalism work as I did for this post much easier, until one day we are not needed anymore..


If you enjoyed this post and want to make a small donation, you can do this with the Paypal Donate button (at the top right of this post) or via BuyMeAcoffee .

Follow me on LinkedIn


References / Youtube-videos UEFA Champions League (European Cup) history (season 1955-56 to 2023-24)

ALL Champions League goals 2023/24 | Real Madrid

Best Champions League Goals In Football History (2000-2024)

European Cup final 1960 | Real Madrid 7-3 Eintracht Frankfurt

Feyenoord - Celtic 2-1 Europa Cup I Milaan, 6 mei 1970

Ajax wins 1972 European Cup Final

Borussia Dortmund 0-2 Real Madrid | HIGHLIGHTS | Champions League final 2023/24


Downloads

PowerBI report with Champions League history until season 2023/24


Power BI dashboard (embedded)

https://community.fabric.microsoft.com/t5/Data-Stories-Gallery/PowerBI-report-UEFA-Champions-League-Winners-history-seasons/m-p/4000701#M12714