 second method of kind of teasing these values apart if we don't like the jitter, we could also take the same code block and just add transparency. So what I'm going to do here is create a new header called transparency. I'm going to copy again my code block from above and we'll try this first with point just to see the effect kind of compared to our original version. And the argument that we're going to use inside the parentheses is alpha. So alpha controls the amount of transparency. It goes from a zero to one scale and we're going to set it to 0.5. Okay when you run this you can see we're still in gray scale so it might not be super visible but you can see that there are some darker points that represent essentially some kind of grouping some some stacking of values at that point whereas these lighter gray points are going to represent areas where there's lower density fewer points stacked one on top of the other. You could also add some color here tomato sorry this has to be uh designating colors you have to use quotation marks. So here I'm using tomato which is kind of this red shade. We could also change this to blue if we wanted to. You can kind of play with this to see what gives you the clearest effect to get that kind of color density difference between these points. You can use the same combination of arguments with the jitter function as well to kind of mix these two methods here. So now we have this kind of cloud effect um together with the transparency. All right so you can basically play with these to get the effect that you want. Again we can combine this with the uh these arguments here to control the amount of jitter. Typically when we're stringing together a lot of different options here there are some kind of best practices for formatting just hitting the enter key after each argument separates these undifferent lines and just kind of improves the readability. The final example that we're going to show here is using size basically manipulating the size of the points to show us how much uh bending or concentration of points there are around specific coordinates. Okay so to demonstrate this we're going to copy again the code block from above. We're going to change g on point on this and you'll see now that this function has created kind of this new dimension to the data. It's taking the number of points at each set of coordinates and changing the size of that point to represent the number of points that are at that location. So this is a good way again of seeing kind of the density the concentration of points at specific values. Okay we wanted to provide some further kind of nuance here for instance if we wanted to see um to distinguish points for different villages we could add an additional argument here to our aesthetics saying that we want to set our color by the village that these records belong to. So if you remember from our original data there's a village column and these records are represented um you know some of them are in this god village kerozo we have basically three different levels of values that the data can take. So if we do this we're going to get the same kind of effect with accounts but now we're distinguishing um records that come from different villages. So for instance this green point here we have something like uh it looks like three points for uh from god and we have one point from ruaka that are the same location but rather than just kind of bending them all together um there is some separation we can get a little bit more to do once there. And you can see that the further the more complex these graphs become um it becomes more important kind of the aesthetic choices that we make. So here we have a blue point kind of superimposed on a green point. This might not be ideal for kind of readability specifically when we start getting into some color blindness issues and that sort of thing. So you will just want to kind of play with this to make sure that that the graphs are readable that you're taking into consideration these kinds of visual differences that people have and just make sure to make good choices so that that data is interpretable.