It is not clear what is the meaning of "random", but if you want it to look like "random" you can start with convex polygon and then smooth it.
For this you can use rounded corners
, but be careful, the parameter of rounded corners
should not be bigger than the half of the shortest side.
\documentclass[tikz,border=7pt]{standalone}
\begin{document}
\begin{tikzpicture}
\fill[blue!24, rounded corners=5mm] plot coordinates{(0,0) (1,0) (2,1) (1,3) (-1,1)}--cycle;
\draw[red!10] plot coordinates{(0,0) (1,0) (2,1) (1,3) (-1,1)}--cycle;
\end{tikzpicture}
\end{document}
Another possibility is to use filldraw
in combination with line join=round
and custom line width
.
\documentclass[tikz,border=7pt]{standalone}
\begin{document}
\begin{tikzpicture}
\filldraw[blue!24, line join=round, line width=1cm] plot coordinates{(0,0) (1,0) (2,1) (1,3) (-1,1)}--cycle;
\draw[red!10] plot coordinates{(0,0) (1,0) (2,1) (1,3) (-1,1)}--cycle;
\end{tikzpicture}
\end{document}

And if you want a random smoothing you can do this :
\documentclass[tikz,border=7pt]{standalone}
\begin{document}
\begin{tikzpicture}[rr/.style={rounded corners=rnd*1cm}]
\fill[blue!24] (0,0) foreach \c in {(1,0),(2,1),(1,3),(-1,1)}{[rr]--\c}[rr]--cycle;
\draw[red!10] plot coordinates{(0,0) (1,0) (2,1) (1,3) (-1,1)}--cycle;
\end{tikzpicture}
\end{document}

Note : this can be combined with a convex hull of random set of points.