4

いくつかのデータを使用して単純な棒グラフを作成しようとしています (ここではハードコードされていますが、いつかファイルから読み込む予定です)。ここまでで棒グラフは取得できましたが、各棒の下に属性「地物名」を入れたいと思います。現在、1 から 16 までの数字しか取得できません。各バーの下に各フィーチャを作成するにはどうすればよいですか?

私のコード:

import matplotlib.pyplot as plt
import numpy as np
import mpld3

fig, ax = plt.subplots()

N = 17
feature_name = ('AccountLength','Intlact','Vmailact','Vmailnumber','day minutes','day calls','day charge','evening minutes','evening calls','evening charge','night minutes','night calls','night charge','intl minutes','intl calls','intl charge','cust calls')
importance = (0.0304,0.0835,0.0222,0.0301,0.1434,0.0315,0.1354,0.0677,0.0268,0.0669,0.0386,0.0286,0.0371,0.0417,0.0521,0.0434,0.1197)
ind = np.arange(N)
width = 0.20
rects = ax.bar(ind, importance, width, color = 'r')
ax.grid(color='white', linestyle='solid')

ax.set_title("Why are my customers churning?", size=20)
ax.set_ylabel('Importance in percentage')
ax.set_xlabel('Feature Name')
ax.set_xticklabels( (feature_name) )
labels = (feature_name)
tooltip = mpld3.plugins.PointLabelTooltip(rects, labels=labels)
mpld3.plugins.connect(fig, tooltip)

mpld3.show()

編集:plt.show()を使用すると、目盛りラベルが表示されることがわかりましたが、mpld3で同じことをしようとすると、機能しません。また、ツールチップが表示されない理由も不思議です。

4

2 に答える 2