Skip to main content

How to Add Flags to Power BI Reports

Adding flags to Power BI Reports might be easier said than done. If you have a dataset which contains data of various countries, adding country flags looks cool. The process to do it, on the other hand, might be compelling. Now I am going to share with you the obstacles I  have faced during the process and of course, how I overcame them.

First I made an excel list of countries that my dataset has. Then I have downloaded to my computer all the flags I need from Wikipedia and converted them to Base64 link via an image encoder website base64-image.de  and added those links to my excel file, which looks like this:


After I added my excel file to Power BI, I converted the data category of URL column from 'uncategorized' to 'image URL', which might be a small step for you but it's a big step for the success of the flag operation. Then I created one to many relationship with DimLocation table and chose 'both' as filter direction, so that I can filter from both tables. When I tested it looked like this:


Between Power BI visuals, slicer, multi-row card, table, and matrix were able to display the flag but I didn't prefer any of them because I can't change the size of the flag with any of them the way I want to. That's why I added another visual displayer from AppSource which is called 'Simple Image'. With this visual displayer, you can easily resize and fit your flag to your report page. When I was testing the visuals of flags I came up with this horrible scene: 


Where is the other part of the Portugal flag? How could this be possible? What did I do wrong? What am I going to do now?... After calming myself, I have noticed that the Spanish flag also has the same problem and it occurred to me that the reason might be the size because both flags have very intricate details compared to others. I went back to the encoder website, copied the URL link of the Portugal flag to a blank Word page, and count the number of characters. It was 58.826. When I checked the number of characters in my excel cell for the URL it was 32.767 which is the maximum character limit. At that moment I had 2 options: I could either choose another tool that has the capacity to store 58.826 in one unit, or I could try to shorten my URL with small-sized flags. When I tried Text or CSV file not to face size limit problem, I have noticed that Power Query has a size limit too. Like in Excel, Power Query also has 32.767 character limit in one cell. If it's more than that the text will be silently truncated. I had no choice other than finding small size flags. At that point, I also had two options. I could either resize my current flags at Paint so that they are going to have shorter URLs or I could find smaller-sized flags. The second option seemed easier and that was the way I chose to solve my flag problem. In the end, I could have one big whole happy Portugal flag. 


There is one more method to small the size of the images and it's changing their format. Let's say you have a JPG file. If you convert it to PNG via Paint, it's size will be smaller. But if you convert it to GIF it's size will be bigger. In the folder down below you can see 3 images. They are all the same picture. I have downloaded the JPG formatted image from the internet and converted it to GIF and PNG at Paint. Their sizes are heavily affected by their format.



Comments

Popular posts from this blog

Manipulating Grand Totals with ISINSCOPE in Power BI

ISINSCOPE function was introduced in with November 2018 Power BI update. We can say it's a very young player in the game, but it's definitely magic. It can be used to manage lots of issues related to hierarchies, but in this post, I'm going to focus on manipulating the grand total line with it.  This is my budget forecast table. The budget forecast that you see for every month is not the forecast for every month, but it's the forecast for the whole year. The budget forecast for 2020 has changed every month. That's why we have different numbers for every row. Below you see the table visual with the year-month column and a measure that shows the values for every month. The thing that I want you to pay attention to is the total line. I wanted to see the last month's value for the total line and this is the measure for that.  This measure calculates this: If the year-month column has one value then take the average of that value. If it doesn't have one value, li...

Customizing Themes With Advanced Elements in Power BI

Advanced Elements is not an intuitive description, that's why I'm going to show you what I'm talking about directly. For my recent project, I've decided to create my own theme for the report. When I was exploring Customize Theme tab, I have come up with the Advanced section. While text, visuals, page, and filter pane sections are self-explanatory, this advanced section seemed quite enigmatic to me. What are the first-level elements? Or the others? I think Microsoft agrees with me upon being enigmatic because the section comes with "Learn more" option: Click to  Learn More . But when I tried to learn more, it didn't make any sense to me, because I'm a visual person and those descriptions are quite hard to remember. That's why I have decided to be a good samaritan and visualize it, and then share it with you.  As you see, while the border is a third-level element, the shadow is a first-level element. Legend, x-axis, and y-axis are second-level elemen...