gpt4 book ai didi

python - Matplotlib 条形图定制

转载 作者:太空宇宙 更新时间:2023-11-03 15:18:35 26 4
gpt4 key购买 nike

我的这部分代码生成图 (1) 中的条形图。我想知道如何修改它以生成图 (2) 中的条形图,这样更具可读性。

axs[4].set_xticks(range(N))
axs[4].set_xticklabels(words[inds],rotation = 'vertical')
axs[4].set_xlabel('word')
axs[4].set_yscale('log')
axs[4].set_ylabel('pagerank')
axs[4].set_title('Sorted PageRank biased by total word frequencies (c = '+str(c4)+')')
axs[4].bar(range(N),p4[inds],lw=2.5, align='center')

plt.subplots_adjust(hspace=.5)

plt.savefig('./figures/pageranks.pdf')

最佳答案

您可以定义自己的函数,并使用plt.hlines绘制水平线。如果您想在某个轴上绘制它,只需将此轴作为参数提供给 ax 参数即可。

import matplotlib.pyplot as plt
import numpy as np

def bar_tops(x, y, width=0.8, align='center', ax=None, **kwargs):
x = np.array(x)
y = np.array(y)
if align == 'center':
left = x - 0.5 * width
right = x + 0.5 * width
elif align == 'edge':
left = x
right = x + width
if ax == None:
ax = plt.gca()
ax.hlines(y, left, right, **kwargs)

示例用法:

bar_tops(np.arange(10), np.sort(np.random.rand(10)), lw=2)
plt.show()

Output

关于python - Matplotlib 条形图定制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18681301/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com