答案嘛,就是自己画legend啊,你看看legend函数,还不是些简单的代码在画,自己画即可。不要被这些条条框框给套住。
这个问题,让我想起来了prettyB包,它给我们一键美化的功能,也展示了美化base plot的可能性。base plot还有一个好处,你的代码起码可以保障5年10年都可以用,但ggplot2就可能不太行了,不信你拿两年前的代码出来跑一下:)
虽然我是ggplot2爱好者,但有些ggplot2版本的画图函数实在是不敢恭维,除了可以用themes来改一些细节之外,缺少太多ggplot2的特性,我认为是不能称之为grammar of graphics的。基本上有很多实现还不如原先base plot,而且base plot有大量现成的各种画图函数,涵盖面要比ggplot2多。但是由于base plot的设计比较久远,画出来的图基本上看着像是20年前,不够漂亮,缺少现代化元素。
这里要推荐的是base plot的主题包,prettyB (https://github.com/jumpingrivers/prettyB),这是一个非常好的尝试,可以让大量现有的画图函数出图效果更加现代化,减少illustrator修图的麻烦。
写到这里,不得不提我之前做过的尝试:《用par设置ggplot2参数?这个可以有!》
安装
安装后可以通过library加载:
使用实例
差别只在于换成,参数是一模一样的。
柱状图
领取专属 10元无门槛券
私享最新 技术干货