0:00In Tableau 22.4 you can now natively
0:03support images on a dashboard as you can
0:05see right here on screen
0:06I've got a very simple URL to set up images
0:08online. I've loaded it into Tableau and it
0:11's inside of a table
0:12This is now native in Tableau, but there's
0:15a few catches to find out more. Let's get
0:17stuck in
0:17Before we get stuck in just one quick favor
0:2082% of the people watching this video in
0:23the last year aren't subscribed to the
0:25channel and just to show you some context
0:27Nearly half of my subscribers came from
0:29this last year's worth of content
0:31And if you look at how many views and how
0:33much time people are spending I'm sure it's
0:35creating value somewhere
0:36So if you really appreciate the content or
0:38would like to see even more of it at a
0:40better high quality standard
0:41Hit the sub button and enjoy the rest of
0:43the video. Okay, so to show you this
0:45feature
0:45I'm actually going to use web edit and
0:47Tableau cloud
0:48I'll go ahead and create a new workbook by
0:49clicking on the new option that brings up
0:51this interface
0:52I can go ahead select my file from my
0:55computer
0:56I've got a sample file there we can just
0:58hit enter and that will go ahead and upload
1:00that file to Tableau cloud and now
1:02We are connected one of the most
1:03frustrating things about web edit is it's
1:05just sometimes harder to do really simple
1:07things
1:08So I I like to preview my data set before I
1:10get stuck in it's actually really hard to
1:12do that here
1:12There's no there's sort of no button here.
1:14If you click on this drop down you don't
1:16get any sort of way of previewing it
1:17So here's a little trick go again the count
1:20of records and put it on rows
1:21You'll get a single bar chart click on that
1:24bar chart
1:24You'll get this little table icon you can
1:26go ahead and select that you'll see the
1:28preview for the count of rows
1:29I've got a thousand records
1:30But you can then go to the full data set
1:32here and that shows you the underlying data
1:34behind the number of records and so
1:36You get a preview of the data set so here
1:38you can see I've got an avatar URL a couple
1:41of profile bits of information
1:42Some of it lowercase some of it uppercase
1:45I'm actually going to show you how to
1:46produce that when we look at the capability
1:48called the proper function in another video
1:51But the column I'm most interested here is
1:53the avatar URL you can see here that it's
1:55actually being generated
1:56From a service and that service can
1:58dynamically change the size of the image
2:00based on what you give it
2:03So it's got a parameter and I've actually
2:05shown in another video a better service
2:07called cloudinary
2:08Which does this to another level even does
2:10image transformations hold that thought for
2:13a second. I'll come back to it
2:14So as the end of the video, so this is the
2:16column we're going to be working with and
2:17to be brutally honest
2:18This image role capability is very simple.
2:21I've already found a few catches though
2:22If I just go ahead and remove this you can
2:24see that this avatar URL is the column
2:27I want to use for the image role
2:29So I'll go ahead and click the drop-down go
2:31down to a new option here that says image
2:33role and you can select URL
2:35Now it's really interesting that they've
2:37made that a separate sort of menu item
2:39because I keep trying to think like
2:40What other types of information could they
2:43add in here?
2:44One thought I had is that you could specify
2:46an image role and add a different type of
2:48encoding into that
2:50So there is a method called base 64
2:52encoding which allows you to store images
2:54as text
2:55So that could be another way of defining an
2:58image role through text
2:59Which would then allow databases to store
3:01images without actually having to hold the
3:02JPEG files
3:03It's quite computer intensive
3:05So maybe that will come in the future
3:07But nonetheless as soon as we've done that
3:09you'll see that we have the avatar URL and
3:11it's now got an icon
3:13It's the first time I've ever seen an image
3:14icon in tableau in the data pane
3:17So that's really good to see now that we've
3:19done that it's super easy
3:20But here's what I discovered as soon as you
3:22drag it in. That's the first thing everyone
3:24will do
3:24Unfortunately get this rather not nice
3:26experience because this feature doesn't
3:28handle a certain number of images in this
3:31case
3:32It's saying filters a fewer than 500 images
3:34for this to work because I've got a
3:35thousand. I'm way over that limit
3:37So what I'll do is I'll just select the
3:39first few
3:41I'll keep those records just by selecting
3:43those records and selecting this options
3:45once I click on those rows and you can see
3:47the image
3:47Role capability is now working as expected
3:49now
3:50These images can fit up to 300 by 300
3:52Nicely and what we can do to kind of finish
3:55this
3:55visualization off is we can bring in the
3:58first name put it on text and now we have
4:00the avatar and name of
4:01Each of our user profile. So now that's
4:04natively supported in tableau
4:06The feature is as simple as that you just
4:08specify an image raw and it starts loading
4:10them in
4:10What use cases might use this?
4:12Well, the sector that I think is going to
4:14benefit the most from this is fast-moving
4:16consumer goods or anyone who works with
4:17products
4:18You already have all the images typically
4:20hosted somewhere online maybe for your
4:23website so people can purchase them
4:24Maybe you already have the images as assets
4:26so you can refer to them in different
4:28services
4:29Working with images is just something that
4:31's purely common in product based roles
4:34So this is going to be really useful for
4:36you
4:36So you can show people the products you're
4:38actually working with in an analytical
4:40context
4:41now the challenge there is then working
4:43with those images is going to become a
4:44little bit tricky because tableau does
4:46actually have a
4:46Few requirements and you just can't go ham
4:49adding images absolutely everywhere to show
4:51you this
4:51What I'll do is I'll link to this in the
4:53description of the first comment in this
4:55video if I bring it on to screen
4:57There's actually a few caveats to be aware
4:59of so you can see tableau themselves
5:01I've actually got images of shoes and
5:02You need to be able to repair your data
5:04source in a certain way you're going to
5:06need to have to use a specific
5:07Extension format essentially the two ways
5:10of specifying in JPEG and a PNG no other
5:12image format works at the moment
5:14Which means no two gifts. I know that's
5:16something people are going to try to do
5:18Animated things inside of a dashboard. I'm
5:20sure someone will figure out a hack
5:21And then you need to mesh make sure that
5:24every URL is actually publicly accessible
5:26the reason this is in some cases the URL
5:29might have to go through the public
5:31internet and if
5:32It's not going to work because of security
5:35or firewall issues then the images won't
5:37simply load
5:37so if you have any sort of issues like that
5:39you need to make sure that you really
5:41understand the
5:42architecture of your network at work or the
5:44network of the people who are going to be
5:46using this dashboard and
5:47The easiest way to do that
5:48It's just to make sure that the images are
5:50publicly available so that if I can visit
5:52them just by going to our URL
5:53Is an absolute stranger then it's going to
5:56work and you might rely on sort of security
5:58by
5:59Sort of making the URLs difficult to guess
6:01changing the URLs and then having your
6:03database change those URLs frequently
6:06So they're being dynamically generated
6:08every so often and the data sources update
6:10as and when that happens
6:11That's going to be probably the best form
6:13of using security to do this
6:14I'm sure there's other ways and there are a
6:17couple of other sort of challenges as well
6:19If you go down there's a little bit of a
6:21limitation and it's actually to do with
6:22performance
6:23I keep going down actually might have
6:25skipped it already
6:26There is a there's a limitation here to do
6:29with client-side rendering and so in
6:31instances where you've got a lot of images
6:34Tableau has this concept called a
6:37complexity score and if the score of the
6:39dashboard is over a certain level
6:41What tableau will do is I'll ask the server
6:43the tableau server or the tableau cloud to
6:46render the dashboard for you
6:48Rather than having that dashboard rendered
6:50here in the browser in my case Google
6:53Chrome the difference there is that
6:55sometimes
6:56Client-side rendering which is in Chrome is
6:58often faster and server-side rendering is
7:00going to be slower
7:01And so if you hit a certain level of
7:03complexity and that's what this note here
7:05is about
7:05You're going to get slightly slower
7:07performance because it's going to have to
7:08require the server to do it and then send
7:10that information
7:11Over the internet to the end user
7:13And so that's why this is super important
7:14to be aware of if you're gonna hop into
7:16images
7:17You might just see a slightly different
7:19experience to sort of what you're familiar
7:20with
7:20Especially if you're testing it locally in
7:22a desktop. It works fine. You put it on
7:24server and for some reason
7:25It's just chugging along and it might be
7:27this particular use case
7:28So I don't want to go into too much detail
7:30about that because it's a whole other topic
7:32to do with
7:32performance recording and how tableau
7:35server and tableau cloud work
7:36But check out this note about client-side
7:39rendering and make sure you've had a look
7:41at it
7:41now the other thing that tableau have
7:43nicely done is look how to
7:44Troubleshoot this because there's going to
7:46be a bunch of reasons why this doesn't work
7:48And so the bottom of this has actually got
7:49several guides on how to this how to use
7:51this how to make it work and
7:53a couple of other things to be aware of and
7:55One of the things I think is going to be
7:57super interesting is you do have a
7:58recommended file size
8:00Let me just try and find that for you. What
8:02is the recommended file side?
8:04I think I skipped past here you go ensure
8:06that each image file is smaller than
8:08128 kilobytes and that is either really
8:11quite permissive or quite restrictive
8:13It depends what images you're using because
8:16if I want to show an image that's black
8:17Well, I don't need much information or much
8:19dates to be able to show that
8:21However, if I have an image that has tons
8:23of colors in it, but it's very very small
8:25It might actually go over that limit very
8:27easily
8:28And so what you're gonna have to do is use
8:30a service that can dynamically make sure
8:32that the images don't go over this
8:34Specific size and that becomes very very
8:36hard to do if you're a photographer
8:38You'll know that when you export an image
8:40You can actually specify a maximum ceiling
8:42for a file size when you work with tableau
8:44dashboard
8:44That's just not something you want to be
8:46messing around with for the thousands of
8:48images
8:48You might be looking at and also it's quite
8:50hard to computationally process all those
8:52images again
8:52Upload them all to where they need to be
8:54and then test this whole workflow
8:56So that's why it's super important to check
8:57out the service that I've mentioned in the
8:59past called Cloudinary
9:00What they do is essentially take the effort
9:03of doing all of that away from you. So let
9:05me go to their website
9:05I've actually done a video on this already
9:07So I'm not going to spend too much time on
9:08this go check out the video on that
9:11But what they do is they essentially
9:13process images and for the record
9:14They're not the only company that just the
9:16company that I use and love they process
9:18images for you in the cloud
9:19And so what you can do is you can specify
9:21Transformations essentially edits to your
9:24images by just changing the URL. I've done
9:26this in another video
9:27I'll put some images up on screen
9:28but then what this will allow you to do is
9:30use things like parameters use things like
9:32Specific customizations for specific teams
9:36or specific departments on those images
9:38without you having to go out and render
9:40those images
9:40It's quite a permissive service
9:42You can actually do a lot of the testing
9:44you need and try this out with maybe one or
9:45two dashboards
9:46While still using the free plan, it's not
9:48expensive at all in my opinion
9:50So go ahead and check Cloudinary out check
9:52out the video on that topic because I've
9:54done a whole video already in anticipation
9:55of this
9:56Feature I think you're gonna absolutely
9:58love it. So that's image rolls in a
9:59nutshell. It's really quite a simple
10:01feature
10:02I for me I just think it's about time we
10:03have this it's gonna be super exciting
10:05I think it's going to change the way people
10:07design dashboards. I don't think it's quite
10:10what everyone was looking for
10:11I think what people wanted is a little bit
10:13more than this no limitations on the number
10:15of images
10:15Maybe even more flexibility to do various
10:17things, but if you're being sensible with
10:19this, I think 500 is quite a nice number
10:21It's quite a nice limit and you can create
10:24dashboards and now start to tell a bit more
10:26of a story in this particular case
10:28I've just built a simple table to show the
10:30capability in other videos in the future.
10:32Not this one
10:32I'm going to break down this feature and
10:34really show you what it can do
10:35But as I like to do I like to keep things
10:38simple and I also hate hacks with a passion
10:40if you want to know
10:41Why check out this video. That's it for
10:43today. Thanks for watching and I'll catch
10:44you in the next one
10:45You
10:51[ Silence ]