小编Rob*_*ack的帖子

matplotlib matshow xtick标签在顶部和底部

我正在尝试可视化名称共现矩阵。这个版本可以用:

import pandas as pd
import numpy as np
import string
import matplotlib.pyplot as plt

n = 10
names = ['Long Name ' + suffix for suffix in string.ascii_uppercase[:n]]
df = pd.DataFrame(np.random.randint(0, 100, size=(n,n)),
                  columns=names, index=names)

fig = plt.figure()
ax = plt.gca()

im = ax.matshow(df, interpolation='none')
fig.colorbar(im)

ax.set_xticks(np.arange(n))
ax.set_xticklabels(names)
ax.set_yticks(np.arange(n))
ax.set_yticklabels(names)
ax.xaxis.set_ticks_position("bottom")
plt.setp(ax.get_xticklabels(), rotation=45,
         ha="right", rotation_mode="anchor")

for (i,j), z in np.ndenumerate(df):
  if z != 0:
    ax.text(j, i, str(z), ha="center", va="center")

ax.set_title("Name Co-Occurrences")
fig.tight_layout()
plt.show()
Run Code Online (Sandbox Code Playgroud)

问题在于我拥有的实际矩阵相当大,因此我想在顶部和底部同时显示名称。我试图通过使用这样做twiny

import pandas as …
Run Code Online (Sandbox Code Playgroud)

python matplotlib

2
推荐指数
1
解决办法
1525
查看次数

标签 统计

matplotlib ×1

python ×1