Seaborn lineplot 对数刻度
Seaborn lineplot logarithmic scale
我在向绘图中添加对数 X-axis 时遇到问题。我想根据样本大小使用方法 A
、B
和 C
.
显示结果
我的数据框:
A B C
15 0.733333 0.613333 0.733333
30 0.716667 0.693333 0.766667
59 0.733684 0.678485 0.745763
118 0.796667 0.726087 0.779661
236 0.817862 0.788333 0.838983
470 0.832125 0.814468 0.836170
我正在努力工作:
sample_count = np.around(np.logspace(math.log10(15),math.log10(470),6))
sample_count = sample_count.astype(int)
sns.set_style('whitegrid')
g_results=sns.lineplot(data=results,dashes=0,markers=['o','o','o'])
g_results.set(xticks=sample_count)
g_results.set(xscale='log')
然而结果并不是我真正想要的,因为滴答声完全消失了:
如果没有最后 xscale
行,它看起来像这样,这当然是线性刻度,但这次有正确的刻度:
我想达到的效果是这样的:
非常感谢你对我的问题的帮助。
首先将 x 轴的刻度设置为对数,然后根据需要设置 xticks 和标签。
sns.set_style('whitegrid')
g_results=sns.lineplot(data=results,dashes=0,markers=['o','o','o'])
g_results.set(xscale='log')
g_results.set(xticks=sample_count)
g_results.set(xticklabels=sample_count)
这给你这个结果:
请注意,我使用的是 sample_count
定义的对数刻度:
sample_count = np.around(np.logspace(math.log10(15),math.log10(470),6))
我在向绘图中添加对数 X-axis 时遇到问题。我想根据样本大小使用方法 A
、B
和 C
.
我的数据框:
A B C
15 0.733333 0.613333 0.733333
30 0.716667 0.693333 0.766667
59 0.733684 0.678485 0.745763
118 0.796667 0.726087 0.779661
236 0.817862 0.788333 0.838983
470 0.832125 0.814468 0.836170
我正在努力工作:
sample_count = np.around(np.logspace(math.log10(15),math.log10(470),6))
sample_count = sample_count.astype(int)
sns.set_style('whitegrid')
g_results=sns.lineplot(data=results,dashes=0,markers=['o','o','o'])
g_results.set(xticks=sample_count)
g_results.set(xscale='log')
然而结果并不是我真正想要的,因为滴答声完全消失了:
如果没有最后 xscale
行,它看起来像这样,这当然是线性刻度,但这次有正确的刻度:
我想达到的效果是这样的:
非常感谢你对我的问题的帮助。
首先将 x 轴的刻度设置为对数,然后根据需要设置 xticks 和标签。
sns.set_style('whitegrid')
g_results=sns.lineplot(data=results,dashes=0,markers=['o','o','o'])
g_results.set(xscale='log')
g_results.set(xticks=sample_count)
g_results.set(xticklabels=sample_count)
这给你这个结果:
请注意,我使用的是 sample_count
定义的对数刻度:
sample_count = np.around(np.logspace(math.log10(15),math.log10(470),6))