I am trying to remove the superposed line of the bins (derived from the hisplot
part of the jointplot
function) in the lateral plot here in this figure (in white):
column1 = "F"
array1 = np.random.randn(400)
column2 = "R"
array2 = np.random.randn(400)
df = pd.DataFrame(np.column_stack((array1, array2)), columns=[column1, column2])
viol = pd.DataFrame(np.concatenate((array1, array2)), columns=["val"])
viol["Sim"] = np.concatenate((np.repeat("F", np.size(array1)), np.repeat("R", np.size(array2))))
viol["xx"] = np.repeat("1", np.size(array1) * 2)
g = sns.jointplot(x=column1,y=column2,data=df,ratio=3,marginal_kws={"kde": False, "color": "white", "element": "poly" })
sns.regplot(x=column1,y=column2,data=df,ax=g.ax_joint)
sns.violinplot( data=viol, x="xx", y="val", hue="Sim")
g.ax_marg_y.get_legend().remove()
sns.despine()
g.fig.colorbar( g.ax_joint.collections[0], ax=[g.ax_joint, g.ax_marg_y, g.ax_marg_x], orientation="vertical")
g.ax_marg_x.remove()
g.ax_marg_y.spines["bottom"].set_visible(False)
I tried by setting the filling to "False" but the contours remained. Or set the color to "invisible". I tried removing the "ax_marg_y" but it was also removed the violin plot. An idea can be to set another scale for the bin heights so it won't be superposed on the violin plot but I didn't manage to set it.
You can remove the kde line in your plot by setting the
linewidth
to0
inside themarginal_kws
, which defines the characteristics of the line... Update thejointplot()
like below (don't think you need the alpha, color, etc., but you can check and remove those as well)...to get the below plot.