

Plt.legend(loc='center left', bbox_to_anchor=(1.1, 0. When you draw circle markers with Scatter, you can only assign a size in screen units (by passing a number of pixels to the size property). Thus if we want a circle to appear a factor of n bigger we would increase the area by a factor n not the radius so the apparent size scales linearly with the area.Įdit to visualize the comment by is what it looks like for different functions of the marker size: However it is the second example (where we are scaling area) that doubling area appears to make the circle twice as big to the eye. Similarly the second example each circle has area double the last one which gives an exponential with base 2. To set specific size for markers in Scatter Plot in Matplotlib, pass required sizes for markers as list, to s parameter of scatter () function, where each size is applied to respective data point. The question asked about doubling the width of a circle so in the first picture for each circle (as we move from left to right) it's width is double the previous one so for the area this is an exponential with base 4. In geopandas > 0.3 (released September 2017), the plotting of points is based on the scatter plot method of matplotlib under the hood, and this accepts a variable markersize. Now the apparent size of the markers increases roughly linearly in an intuitive fashion.Īs for the exact meaning of what a 'point' is, it is fairly arbitrary for plotting purposes, you can just scale all of your sizes by a constant until they look reasonable.Įdit: (In response to comment from probably confusing wording on my part. Create a figure or activate an existing figure using figure () method. Create xs, ys and zs data points using numpy Initialize a variable s for varying size of marker. If instead we have # doubling the area of markers To plot scatter points on a 3D projection with varying marker size, we can take the following steps Set the figure size and adjust the padding between and around the subplots. Notice how the size increases very quickly. To see this consider the following two examples and the output they produce. Because of the scaling of area as the square of width, doubling the width actually appears to increase the size by more than a factor 2 (in fact it increases it by a factor of 4).

There is a reason, however, that the size of markers is defined in this way. This means, to double the width (or height) of the marker you need to increase s by a factor of 4. This can be a somewhat confusing way of defining the size but you are basically specifying the area of the marker.
