Legends in two ggplot graphs in grid.arrange() are overlapping. I have used legend.positon = "top" or "bottom", another problem arises i.e the ggplot is not showing complete legends. Actually my legends are quite long. How can get legends printed in two line to avoid above mentioned problem.
Could you please turn this into a self-contained reprex (short for reproducible example)? It will help us help you if we can be sure we're all working with/looking at the same stuff.
There's also a nice FAQ on how to do a minimal reprex for beginners, below:
What to do if you run into clipboard problems
If you run into problems with access to your clipboard, you can specify an outfile for the reprex, and then copy and paste the contents into the forum.
reprex::reprex(input = "fruits_stringdist.R", outfile = "fruits_stringdist.md")
For pointers specific to the community site, check out the reprex FAQ.
You can put a legend on multiple rows using
guide_legend(). You can see an example in this Stack Overflow answer.