code: def merge(self, other):
          
          self.key = pd.merge(self.key, other.key)
          duplicated = set(self.override_aes) & set(other.override_aes)
          if duplicated:
              warn("Duplicated override_aes is ignored.", PlotnineWarning)
          self.override_aes.update(other.override_aes)
          for ae in duplicated:
              del self.override_aes[ae]
          return self
docs: Merge overlapped guides
  
          For example::
  
              from ggplot import *
              gg = ggplot(aes(x='cut', fill='cut', color='cut'), data=diamonds)
              gg + stat_bin()
  
          This would create similar guides for fill and color where only
          a single guide would do