Thanks for your help! I'm a PhD student that is using Power BI for professional sports teams. When I went to compress the images to around 15 kb, the photos looked terrible (they are professional head and shoulder profile profile photos and are currently around 500 kb). An alternative way that worked was to upload them to my FB profile wall and only share with myself. I then copied the URL of each photo and copied that into an excel spreadsheet. The images have a relationship with a slicer so when you filter the name of the athlete, the image will appear alongside the data that goes with it. Maybe there is a better way of doing it, but for now - this will work!
Hey! that is genius. I never thought about uploading them to a social media site to obtain a URL. Yeah, ideally it would be best to reference them through a URL link like you did. Although PowerBi should not have had a big problem converting a 500KB file to base64. I am surprised it created a resolution issue for you.
Thank you so much! Method 3 was exactly what I needed. I tried debugging method 1 for like an hour before I saw this video - never would have guessed that the base64 stuff was over combined with excel's character limit was causing those issues.
Hey Dapper Dash - I have some questions that I am hoping you can help me with. The first is if you have a work around for situations where my photo folder contains a mix of jpg and png images. Is there a way to tackle both of these together? And the second question I have is what if (using your example) I have four picture per house that I want to be able to show (maybe house 1 Kitchen, bedroom, bathroom, backyard). How would you recommend creating a key for that? Thanks for any help and guidance you can provide!
El video estuvo genial , en el código me salia error al principio, pero solo tenia que corregir esto "=>" let //Get list of files in folder Source = Folder.Files("F:\PowerBiTutorials\DapperDash_4_LocalImagesInTable\Pictures\RealEstate"), //Remove unnecessary columns RemoveOtherColumns = Table.SelectColumns(Source,{"Content", "Name"}), //Creates Splitter function SplitTextFunction = Splitter.SplitTextByRepeatedLengths(30000), //Converts table of files to list ListInput = Table.ToRows(RemoveOtherColumns), //Function to convert binary of photo to multiple //text values ConvertOneFile = (InputRow as list) => let BinaryIn = InputRow{0}, FileName = InputRow{1}, BinaryText = Binary.ToText(BinaryIn, BinaryEncoding.Base64), SplitUpText = SplitTextFunction(BinaryText), AddFileName = List.Transform(SplitUpText, each {FileName,_}) in AddFileName, //Loops over all photos and calls the above function ConvertAllFiles = List.Transform(ListInput, each ConvertOneFile(_)), //Combines lists together CombineLists = List.Combine(ConvertAllFiles), //Converts results to table ToTable = #table(type table[Name=text,Pic=text],CombineLists), //Adds index column to output table AddIndexColumn = Table.AddIndexColumn(ToTable, "Index", 0, 1) in AddIndexColumn
2:20- Method 1- for only a few small images- converting to base 64 6:33- Method 2- having power bi automatically convert them to base 64 with a formula (files are still pretty small) 16:38- showing how Method 2 doesn't work for large or hi-res images 27:15- Method 3- large or hi res images
Thanks a lot for uploading this video. After watching multiple videos to upload the images on the dashboard, I was finally able to do it. All thanks to you for explaining it in a simple format and also to Chris for writing that blog which explains the step 3. I used the step 3 to get my work done. I might have gone through more than 50 videos to solve this and finally I landed on your video and bingo 'My search was over'. Most of my images are working fine now except 2-3 images which gives an error "The image 'undefined' could not be loaded. undefined". Please let me know the trick to resolve this issue too. Thanks again for creating such important contents.
Hi, thanks so much for explaining this thoroughly but I have a query, this particular slicer requires subscription. Is there any other slicer which does the same job? Your help would be greatly appreciated.
What do you do if you're filtering images (I have about 200 images of cities using your 3rd method), but many more locations that I don't have images for, so if I don't have an image, I want to put in a generic picture. How would I nest that if statement into the concatenate formula at 33:20?
Thank you for the info. This is all great. However, as of today, I can't download CloudScope image. Has anyone experienced the same? Is there any other alternative?
Great walk through of the methods. I have been experimenting between blob storage and base64 to access images and find method 3 is great in terms of resolution. Is there a way to show a "resting image" where the chiclet slicer is not engaged? IE - I have all of my data and then want to start filtering on it. At the moment, I get an empty "image by cloudscope" visual.
Tony, I appreciate the question. Sorry if my response is late, I have been busy starting a new job. I believe I understand your question and I think I have a solution. Essentially if there is NO FILTER applied, then you get an error on the Cloudscope image. You are wanting to know how to apply some static image in the event of no slicer selected. MY SOLUTION: I got it to work by creating a measure on the "ImageIndex" dataset. This measure checks to see if any slicer or filter has been applied. If there is no slicer, it returns the value 99 SelectedImage = SELECTEDVALUE(RealEstate[House #],99) Then, I adjusted my original measure that returns the image: Image = IF([SelectedImage] = 99,"data:image/jpeg;base64, " & CONCATENATEX(FILTER(ImageIndex,ImageIndex[Name] = "1.jpg"),ImageIndex[Pic],,ImageIndex[Index],ASC), IF( HASONEVALUE(ImageIndex[Name]), "data:image/jpeg;base64, " & CONCATENATEX(ImageIndex, ImageIndex[Pic], , ImageIndex[Index],ASC) )) You will notice that I do an initial IF statement to check if my "SelectedImage" measure above returns 99 or not. If it returns TRUE (meaning no slicer is selected), then I simply return one of the images from my table (I chose image "1.jpg"). If there IS a slicer selected, then it simply returns the image associated with that slicer. I hope that helps. Please let me know if you still need help, maybe we can find some time to look at the model and figure it out. My email is on the channel information. Thanks for the question.
Thanks for the tips! But i have one problem, how we maintain our local picture to be visualize on Power Bi service as well. It appears well on Power Bi desktop but appears as error when i tried to publish on Power Bi service online. Help!
Ain' Natasha, I uploaded my files to Power Bi service and the images worked for me. I had no errors. Let me know if you figured it out. I want to make sure it works for you. We can talk through email or even set up a meeting to go through your pbix file.
Hi Mate, I am intending to display multiple images of the same house but not sure how to do it. I have a dataset of building defects where some rooms will have no defect and hence no image, and other rooms may have also be 4 defects and hence I want all 4 images to be displayed as I change the filter to that room number. Can u please guide. Thanks. Sami
Hey Sami, I think I know what you are trying to do. My initial thought is to use a visual from the store called Card Browser. It's free to download. The other is to simply use a Table, but it may depend on how large your images are. Let me mock something up and I can share it with you. Or if you have a sample file, feel free to email me at dapperdash.bi@gmail.com
Hey Joe. I may need some clarification to understand the issue you are encountering. You can adjust the size of the image visual by dragging around the corners of the visual. Shrinking the visual should also shrink the image. If you are having to resize the image itself, maybe to make the file size smaller, you would have to do that in a program like "Photos" or maybe even "Paint 3D" or "Paint". I am also glad to chat through email or even on a Zoom/Teams call to see if we can get your question answered. Let me know.
Thanks for Video I have tested the same, I was trying for around 200 employee image stored in local folder against each Employee ID, I am not getting the image in Power BI Dashboard. Process I have repeated multiple times still unable to resolve.
What if the image size is greater then 2.1M does that 3rd method will still work, I am not sure because I have tried it, can you give me another solution if the image size is greater then 2.1M?
I followed your tutorial. I really liked it. However, there is a bit of a problem. In the slicer only the text is showing not the image. The data category has also been changed to "Image URL". It's not working.. Can you help me out.
Amazing tutorial, helped solved an issue I had been researching for months! One question RE method three - have you tried any other image visuals with success? I’m currently using ImagePro but would love to be able to use something like ImageGrid, however it seems to have the same issue as Simple Image where it won’t accept a measure for the Image URL field. Thanks! 😊
This is a great tutorial. Thank you! I have an issue though, for whatever reason my image file shows the full image, but when I convert to base64 and try to view in PBI in Simple Image, it cuts off the image to only the top 3rd or so of the image. Have you experienced this before?
Hey Stephen, have you made it to the end of the video? It sounds like method 3 will solve your issue. Your image is too large when converted to base64 and therefore PowerBi only renders whatever it is able to calculate. Method 3 in the tutorial solves for that. If you are still getting an error, you can email me the image that you are working with and I can see if we can get it to work.
Emmanuel, I was not aware they changed the property image URL. I will have a look and let you know. I am out of town but I will get a response next week
Cray, for some reason RUclips did not allow me to add the ">" character to the video description. I had to settle for ">". Thanks for letting know, I should have called that out on the video.
Hi, just wanted to say how clear and informative this video was. Well done! Quick question, how do I go about converting that calculation into a column?
Sorry for just noticing this comment. Unfortunately the measure cannot be converted into a normal column for the table. This means that the standard image visual cannot use the measure to display a picture. This is why I went to the visual store and used a separate Image viewer app that allows the measure to be used.
Hi you are simply amazing.Thankyou so much for making this fun and easy to learn..please keep up ur work you gonna do wonders here.... Just a question have you taught to create the sliding slicer shown in this video in any of your other videos...
Sobhagyashri, I haven't done any tutorial on that slicer, but you can get the slicer from the Power Bi Visual Market. It is called the "ChicletSlicer".
hai great tutorial so far, but i have a problem with method number 3, i have done all same as your instruction in it but the picture says "image undefined"? please help me
It's difficult to say what the problem might be without being to look at the model. If the data isn't private, would you mind sharing a sample image and the pbix file with me.
Hustler Fx, sometimes the issue may be with the following characters "=>". RUclips does not allow me to use the greater than symbol. Could that have been your problem?
Thanks for your help! I'm a PhD student that is using Power BI for professional sports teams. When I went to compress the images to around 15 kb, the photos looked terrible (they are professional head and shoulder profile profile photos and are currently around 500 kb). An alternative way that worked was to upload them to my FB profile wall and only share with myself. I then copied the URL of each photo and copied that into an excel spreadsheet. The images have a relationship with a slicer so when you filter the name of the athlete, the image will appear alongside the data that goes with it. Maybe there is a better way of doing it, but for now - this will work!
Hey! that is genius. I never thought about uploading them to a social media site to obtain a URL. Yeah, ideally it would be best to reference them through a URL link like you did. Although PowerBi should not have had a big problem converting a 500KB file to base64. I am surprised it created a resolution issue for you.
Thank you so much! Method 3 was exactly what I needed. I tried debugging method 1 for like an hour before I saw this video - never would have guessed that the base64 stuff was over combined with excel's character limit was causing those issues.
Yeah when I first started digging into this, I didn't realize it shared that same character limitation.
This was the only video I could find that teachs how to do it, thank you very much for sharing!
Rafael, no worries. I'm glad it helped you out.
This is a excellent resource on working with images on Power BI. Kudos! Subscribed, Liked and bookmarked.
Method 3 is amazing. Exactly what I was looking for. Thanks a lot, Dapper Dash!
This is spectacular! Thank you so much. Method 3 is a total game changer.
Thank you for this! Love the way you walk us through step by step. Keep it up
I appreciate the love! I am glad the video helped out.
Omg thank you so much! Your second method worked for me.. I was so stressed because of this issue. But all thanks to you
Great job, you are doing very well, keep up and produce content more frequently!
Sensacional o método 3, obrigado. (Sensational method 3, thank you.)
Amazing!!!
You have a natural gift to explain.
Your calm, patience, and tone of voice are fantastic.
You have a fan here.
Keep going
Thanks a lot Joao. I appreciate the kind words and I am glad my content is helpful.
27:16- method 3 starts
There's an error on line 12 of your code for Method 3: "=> " needs to be an arrow: "=>"
28:15.
Hey Dapper Dash - I have some questions that I am hoping you can help me with. The first is if you have a work around for situations where my photo folder contains a mix of jpg and png images. Is there a way to tackle both of these together? And the second question I have is what if (using your example) I have four picture per house that I want to be able to show (maybe house 1 Kitchen, bedroom, bathroom, backyard). How would you recommend creating a key for that? Thanks for any help and guidance you can provide!
El video estuvo genial , en el código me salia error al principio, pero solo tenia que corregir esto "=>"
let
//Get list of files in folder
Source = Folder.Files("F:\PowerBiTutorials\DapperDash_4_LocalImagesInTable\Pictures\RealEstate"),
//Remove unnecessary columns
RemoveOtherColumns = Table.SelectColumns(Source,{"Content", "Name"}),
//Creates Splitter function
SplitTextFunction = Splitter.SplitTextByRepeatedLengths(30000),
//Converts table of files to list
ListInput = Table.ToRows(RemoveOtherColumns),
//Function to convert binary of photo to multiple
//text values
ConvertOneFile = (InputRow as list) =>
let
BinaryIn = InputRow{0},
FileName = InputRow{1},
BinaryText = Binary.ToText(BinaryIn, BinaryEncoding.Base64),
SplitUpText = SplitTextFunction(BinaryText),
AddFileName = List.Transform(SplitUpText, each {FileName,_})
in
AddFileName,
//Loops over all photos and calls the above function
ConvertAllFiles = List.Transform(ListInput, each ConvertOneFile(_)),
//Combines lists together
CombineLists = List.Combine(ConvertAllFiles),
//Converts results to table
ToTable = #table(type table[Name=text,Pic=text],CombineLists),
//Adds index column to output table
AddIndexColumn = Table.AddIndexColumn(ToTable, "Index", 0, 1)
in
AddIndexColumn
Thank you! I had the same issue and your solution worked
Thanks for you help!!
If the image is an SVG the length is way shorter and it is working for me.
That was fascinating. Solved my problem. Thank you.
Note that you can only use really small images for method 1. You have to resize the images to around 15 kB. If not you will see half images in PowerBI
Yes, that is a good call out. The image sizes have to be very small and probably a web image as opposed to a personal photo.
Pls bring your awesome content more often
2:20- Method 1- for only a few small images- converting to base 64
6:33- Method 2- having power bi automatically convert them to base 64 with a formula (files are still pretty small)
16:38- showing how Method 2 doesn't work for large or hi-res images
27:15- Method 3- large or hi res images
you'v saved my job! Thank you a lot.
Do you know how I can add a bunch of pictures as tooltips?
Thanks a lot for uploading this video. After watching multiple videos to upload the images on the dashboard, I was finally able to do it. All thanks to you for explaining it in a simple format and also to Chris for writing that blog which explains the step 3. I used the step 3 to get my work done. I might have gone through more than 50 videos to solve this and finally I landed on your video and bingo 'My search was over'.
Most of my images are working fine now except 2-3 images which gives an error "The image 'undefined' could not be loaded. undefined". Please let me know the trick to resolve this issue too.
Thanks again for creating such important contents.
Even I am facing the same issue with some images
Amazing tutorials mate!!
many thanks for this 3 methods 😀
Thank you, that's awesome!
شكرا يا دابر داش
Hi, thanks so much for explaining this thoroughly but I have a query, this particular slicer requires subscription. Is there any other slicer which does the same job? Your help would be greatly appreciated.
Explained so well..
What do you do if you're filtering images (I have about 200 images of cities using your 3rd method), but many more locations that I don't have images for, so if I don't have an image, I want to put in a generic picture. How would I nest that if statement into the concatenate formula at 33:20?
Super it helped me . Thank you bro
Thank you!! Love this tutorial!
You did a great job. Thanks for your tutorial
When I tried method three, the message in cloudscope visualization tab at the end says :the image "undefined" could not be loaded. How to fix this
Thank you for the info. This is all great. However, as of today, I can't download CloudScope image. Has anyone experienced the same? Is there any other alternative?
For the Map, which visual did you use?
you can use method 2 with html5 viewer but parse the b64 inside and it will work like magic
amazing, thanks
Thanks a lot!
amazing, thanks for sharing
Tried method #3, but couldn´t make it work. I get a syntax error in line ListInput... don't know how to fix it
What about links to google maps to see properties in our tooltips? I can't get mine to show up.
Great walk through of the methods. I have been experimenting between blob storage and base64 to access images and find method 3 is great in terms of resolution. Is there a way to show a "resting image" where the chiclet slicer is not engaged? IE - I have all of my data and then want to start filtering on it. At the moment, I get an empty "image by cloudscope" visual.
Tony, I appreciate the question. Sorry if my response is late, I have been busy starting a new job. I believe I understand your question and I think I have a solution. Essentially if there is NO FILTER applied, then you get an error on the Cloudscope image. You are wanting to know how to apply some static image in the event of no slicer selected.
MY SOLUTION:
I got it to work by creating a measure on the "ImageIndex" dataset. This measure checks to see if any slicer or filter has been applied. If there is no slicer, it returns the value 99
SelectedImage = SELECTEDVALUE(RealEstate[House #],99)
Then, I adjusted my original measure that returns the image:
Image =
IF([SelectedImage] = 99,"data:image/jpeg;base64, " & CONCATENATEX(FILTER(ImageIndex,ImageIndex[Name] = "1.jpg"),ImageIndex[Pic],,ImageIndex[Index],ASC),
IF(
HASONEVALUE(ImageIndex[Name]),
"data:image/jpeg;base64, " &
CONCATENATEX(ImageIndex,
ImageIndex[Pic],
,
ImageIndex[Index],ASC)
))
You will notice that I do an initial IF statement to check if my "SelectedImage" measure above returns 99 or not. If it returns TRUE (meaning no slicer is selected), then I simply return one of the images from my table (I chose image "1.jpg").
If there IS a slicer selected, then it simply returns the image associated with that slicer.
I hope that helps. Please let me know if you still need help, maybe we can find some time to look at the model and figure it out. My email is on the channel information.
Thanks for the question.
@@DapperDash Thanks for this. Much appreciated.
Thanks for the tips! But i have one problem, how we maintain our local picture to be visualize on Power Bi service as well. It appears well on Power Bi desktop but appears as error when i tried to publish on Power Bi service online. Help!
Ain' Natasha, I uploaded my files to Power Bi service and the images worked for me. I had no errors. Let me know if you figured it out. I want to make sure it works for you. We can talk through email or even set up a meeting to go through your pbix file.
Super helpful 👍
wow first one work for me thanks a lot
can i show other image when there is no selection in slicer ?
Where can i find this Image Pro CloudScope?
Hi Mate, I am intending to display multiple images of the same house but not sure how to do it. I have a dataset of building defects where some rooms will have no defect and hence no image, and other rooms may have also be 4 defects and hence I want all 4 images to be displayed as I change the filter to that room number. Can u please guide. Thanks. Sami
Hey Sami, I think I know what you are trying to do. My initial thought is to use a visual from the store called Card Browser. It's free to download. The other is to simply use a Table, but it may depend on how large your images are. Let me mock something up and I can share it with you. Or if you have a sample file, feel free to email me at dapperdash.bi@gmail.com
Thank you so much
Thank you !
Amazing work!!
thanks
Anyone please let me know the code used for adding new column in method:03...it is not visible in video.
If file location sharpoint how to add that in this syntax??
It's useful ❤❤
Thanks!
thanks for the video, my only issue is how to resize the images in power bi. I need to make them smaller
Hey Joe. I may need some clarification to understand the issue you are encountering.
You can adjust the size of the image visual by dragging around the corners of the visual. Shrinking the visual should also shrink the image.
If you are having to resize the image itself, maybe to make the file size smaller, you would have to do that in a program like "Photos" or maybe even "Paint 3D" or "Paint".
I am also glad to chat through email or even on a Zoom/Teams call to see if we can get your question answered. Let me know.
Do you know about the trick to switch screens with your keyboard? Hold down Alt and click tab.
Thanks for Video I have tested the same, I was trying for around 200 employee image stored in local folder against each Employee ID, I am not getting the image in Power BI Dashboard. Process I have repeated multiple times still unable to resolve.
Can you give us the code used for new column because in your video it is not visible
Thanks for the video, it helped me a lot!
Were you able to figure out the issue with the "image undefined" problem?
What if the image size is greater then 2.1M does that 3rd method will still work, I am not sure because I have tried it, can you give me another solution if the image size is greater then 2.1M?
I followed your tutorial. I really liked it.
However, there is a bit of a problem.
In the slicer only the text is showing not the image. The data category has also been changed to "Image URL". It's not working..
Can you help me out.
Amazing tutorial, helped solved an issue I had been researching for months! One question RE method three - have you tried any other image visuals with success? I’m currently using ImagePro but would love to be able to use something like ImageGrid, however it seems to have the same issue as Simple Image where it won’t accept a measure for the Image URL field. Thanks! 😊
This is a great tutorial. Thank you! I have an issue though, for whatever reason my image file shows the full image, but when I convert to base64 and try to view in PBI in Simple Image, it cuts off the image to only the top 3rd or so of the image. Have you experienced this before?
Hey Stephen,
have you made it to the end of the video? It sounds like method 3 will solve your issue. Your image is too large when converted to base64 and therefore PowerBi only renders whatever it is able to calculate. Method 3 in the tutorial solves for that. If you are still getting an error, you can email me the image that you are working with and I can see if we can get it to work.
in the last version of Power Bi, the property Image URL its no longer.... what can i do?
Emmanuel, I was not aware they changed the property image URL. I will have a look and let you know. I am out of town but I will get a response next week
In the Method 3 code, ConvertOneFile = (InputRow as list) => should be ConvertOneFile = (InputRow as list) =>
Cray, for some reason RUclips did not allow me to add the ">" character to the video description. I had to settle for ">". Thanks for letting know, I should have called that out on the video.
how about the measure code
Hi, just wanted to say how clear and informative this video was. Well done! Quick question, how do I go about converting that calculation into a column?
Sorry for just noticing this comment. Unfortunately the measure cannot be converted into a normal column for the table. This means that the standard image visual cannot use the measure to display a picture. This is why I went to the visual store and used a separate Image viewer app that allows the measure to be used.
I used python to create a data frame for method3 instead of m code. Then uploaded the dataframe from csv file
I tried method 3. I am getting a token literal expected error. Can someone help?
Hi you are simply amazing.Thankyou so much for making this fun and easy to learn..please keep up ur work you gonna do wonders here.... Just a question have you taught to create the sliding slicer shown in this video in any of your other videos...
Sobhagyashri, I haven't done any tutorial on that slicer, but you can get the slicer from the Power Bi Visual Market. It is called the "ChicletSlicer".
@@DapperDash Hey Thanks a lot for your reply.
sami nee nalla irupa
hai great tutorial so far, but i have a problem with method number 3, i have done all same as your instruction in it but the picture says "image undefined"? please help me
It's difficult to say what the problem might be without being to look at the model. If the data isn't private, would you mind sharing a sample image and the pbix file with me.
I’m getting this. Did you ever figure it out?
I tried to do it but completely failed
GO SUN DEVILS
Tried method #3, but couldn´t make it work. I get a syntax error in line ListInput... don't know how to fix it
Hustler Fx, sometimes the issue may be with the following characters "=>". RUclips does not allow me to use the greater than symbol. Could that have been your problem?