如何减小箱线图矩形的宽度?
How can I decrease the width of a boxplot rectangle?
我画了一个箱线图:
我想减小 blue/orange 矩形的宽度以获得像此箱线图中 blue/orange 矩形的宽度:
我的目标是减少箱线图的总宽度,以便它在文档中占用的空间更少space/我可以在绘图图片旁边添加文本。
到目前为止的代码:
ax_v = sns.boxplot(x="hasTopic", y="sentiment_sum", data=videos, orient="v")
ax_v.set(xticklabels=["ohne", "mit"])
ax_v.set(ylim=(-4, 4))
plt.xlabel('Themenbezug Videos', fontsize=14)
plt.ylabel('Sentiment', fontsize=14)
plt.show()
我如何在 Seaborn 中做到这一点?
plt.figure(figsize=(3.4, 4)) # <- this line
ax_v = sns.boxplot(x="hasTopic", y="sentiment_sum", data=videos, width=0.5, orient="v")
ax_v.set(xticklabels=["ohne", "mit"])
ax_v.set(ylim=(-4, 4))
plt.xlabel('Themenbezug Videos', fontsize=14)
plt.ylabel('Sentiment', fontsize=14)
plt.show()
解决了。
要使用自定义颜色为每个矩形着色,请使用:
my_pal = {0: "#3399ff", 1: "#f1c40f"} # x="hasTopic" has value 0 or 1
plt.figure(figsize=(3.4, 4), dpi=800)
ax_c = sns.violinplot(x="hasTopic", y="sentiment_sum", palette=my_pal, width=0.7, orient="v", data=channels)
ax_c.yaxis.set_major_locator(ticker.MultipleLocator(tick_spacing))
#ax_v = sns.swarmplot(x="hasTopic", y="sentiment_sum", data=comments, color=".25")
ax_c.set(xticklabels=["ohne", "mit"])
ax_c.set(ylim=(-4, 4))
plt.xlabel('Themenbezug Channels', fontsize=14)
plt.ylabel('Sentiment', fontsize=14)
plt.tight_layout()
plt.show()
我画了一个箱线图:
我想减小 blue/orange 矩形的宽度以获得像此箱线图中 blue/orange 矩形的宽度:
我的目标是减少箱线图的总宽度,以便它在文档中占用的空间更少space/我可以在绘图图片旁边添加文本。
到目前为止的代码:
ax_v = sns.boxplot(x="hasTopic", y="sentiment_sum", data=videos, orient="v")
ax_v.set(xticklabels=["ohne", "mit"])
ax_v.set(ylim=(-4, 4))
plt.xlabel('Themenbezug Videos', fontsize=14)
plt.ylabel('Sentiment', fontsize=14)
plt.show()
我如何在 Seaborn 中做到这一点?
plt.figure(figsize=(3.4, 4)) # <- this line
ax_v = sns.boxplot(x="hasTopic", y="sentiment_sum", data=videos, width=0.5, orient="v")
ax_v.set(xticklabels=["ohne", "mit"])
ax_v.set(ylim=(-4, 4))
plt.xlabel('Themenbezug Videos', fontsize=14)
plt.ylabel('Sentiment', fontsize=14)
plt.show()
解决了。
要使用自定义颜色为每个矩形着色,请使用:
my_pal = {0: "#3399ff", 1: "#f1c40f"} # x="hasTopic" has value 0 or 1
plt.figure(figsize=(3.4, 4), dpi=800)
ax_c = sns.violinplot(x="hasTopic", y="sentiment_sum", palette=my_pal, width=0.7, orient="v", data=channels)
ax_c.yaxis.set_major_locator(ticker.MultipleLocator(tick_spacing))
#ax_v = sns.swarmplot(x="hasTopic", y="sentiment_sum", data=comments, color=".25")
ax_c.set(xticklabels=["ohne", "mit"])
ax_c.set(ylim=(-4, 4))
plt.xlabel('Themenbezug Channels', fontsize=14)
plt.ylabel('Sentiment', fontsize=14)
plt.tight_layout()
plt.show()