<p dir="auto">Dear dev,</p>
<p dir="auto">I like combining box and strip plots, I also like making optimal use of seaborn categorical plotting features, i.e. like this:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="sns.catplot(kind='point', data=alldata_long, x='gene_id', y='TPM', hue='Exp condition', row='Lib prep', height=3, aspect=4)"><pre class="notranslate"><code class="notranslate">sns.catplot(kind='point', data=alldata_long, x='gene_id', y='TPM', hue='Exp condition', row='Lib prep', height=3, aspect=4)
</code></pre></div>
<p dir="auto">I would like to be able to combine both approaches, would the command from the title of this post be an option? At the moment I am having difficulties combining the two plots in a row and col split catplot...</p>
<p dir="auto">Highest regards,</p>
<p dir="auto">Freek.</p>
<p dir="auto">With recent shift in the docs to emphasize the figure-level plots, it raises the challenge that layering multiple plots (i.e. a swarmplot on top of a violinplot) this way is not obvious. For a single axes grid, you can plot directly onto it using the axes-level function you want. For multi-plot grids, you can use <code class="notranslate">.map_dataframe</code>, but synching the order of the semantics between the two plots is a challenge.</p>
<p dir="auto">An option for a better API might be to accept a sequence in <code class="notranslate">kind</code>, i.e.</p>
<div class="highlight highlight-source-python notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="sns.catplot(x=&quot;total_bill&quot;, y=&quot;tip&quot;, kind=(&quot;violin&quot;, &quot;swarm&quot;), data=tips)"><pre class="notranslate"><span class="pl-s1">sns</span>.<span class="pl-en">catplot</span>(<span class="pl-s1">x</span><span class="pl-c1">=</span><span class="pl-s">"total_bill"</span>, <span class="pl-s1">y</span><span class="pl-c1">=</span><span class="pl-s">"tip"</span>, <span class="pl-s1">kind</span><span class="pl-c1">=</span>(<span class="pl-s">"violin"</span>, <span class="pl-s">"swarm"</span>), <span class="pl-s1">data</span><span class="pl-c1">=</span><span class="pl-s1">tips</span>)</pre></div>
<p dir="auto">This would be straightforward, except what about additional keyword arguments?</p>