使用 DataFrame 的热图
Heat Map with DataFrame
我有一个 pandas 形式的数据框
State RF LOG KNN MLP DT LDA AB
0 AR 0.95 0.87 0.81 0.89 0.81 0.84 0.87
1 FL 0.83 0.86 0.85 0.86 0.89 0.82 0.85
2 NJ 0.89 0.81 0.88 0.83 0.89 0.84 0.83
3 NV 0.77 0.72 0.89 0.79 0.79 0.73 0.70
4 TX 0.71 0.70 0.71 0.77 0.70 0.70 0.92
5 CA 0.69 0.81 0.81 0.88 0.88 0.60 0.89
我怎样才能制作一个热图,例如,在 Seaborn 上,X 轴上有列的名称:[RF、LOG、KNN、MLP、DT、LDA、AB],在Y 轴列状态 [AR、FL、NJ、NV、TX、CA] 的名称以及方块中显示的相应值是“热”指标吗?
如果对州的列进行索引,可以直接绘制热图。
import pandas as pd
import numpy as np
import io
import seaborn as sns
sns.set_theme()
data = '''
State RF LOG KNN MLP DT LDA AB
0 AR 0.95 0.87 0.81 0.89 0.81 0.84 0.87
1 FL 0.83 0.86 0.85 0.86 0.89 0.82 0.85
2 NJ 0.89 0.81 0.88 0.83 0.89 0.84 0.83
3 NV 0.77 0.72 0.89 0.79 0.79 0.73 0.70
4 TX 0.71 0.70 0.71 0.77 0.70 0.70 0.92
5 CA 0.69 0.81 0.81 0.88 0.88 0.60 0.89
'''
df = pd.read_csv(io.StringIO(data), delim_whitespace=True)
df.set_index('State', inplace=True)
ax = sns.heatmap(df)
我有一个 pandas 形式的数据框
State RF LOG KNN MLP DT LDA AB
0 AR 0.95 0.87 0.81 0.89 0.81 0.84 0.87
1 FL 0.83 0.86 0.85 0.86 0.89 0.82 0.85
2 NJ 0.89 0.81 0.88 0.83 0.89 0.84 0.83
3 NV 0.77 0.72 0.89 0.79 0.79 0.73 0.70
4 TX 0.71 0.70 0.71 0.77 0.70 0.70 0.92
5 CA 0.69 0.81 0.81 0.88 0.88 0.60 0.89
我怎样才能制作一个热图,例如,在 Seaborn 上,X 轴上有列的名称:[RF、LOG、KNN、MLP、DT、LDA、AB],在Y 轴列状态 [AR、FL、NJ、NV、TX、CA] 的名称以及方块中显示的相应值是“热”指标吗?
如果对州的列进行索引,可以直接绘制热图。
import pandas as pd
import numpy as np
import io
import seaborn as sns
sns.set_theme()
data = '''
State RF LOG KNN MLP DT LDA AB
0 AR 0.95 0.87 0.81 0.89 0.81 0.84 0.87
1 FL 0.83 0.86 0.85 0.86 0.89 0.82 0.85
2 NJ 0.89 0.81 0.88 0.83 0.89 0.84 0.83
3 NV 0.77 0.72 0.89 0.79 0.79 0.73 0.70
4 TX 0.71 0.70 0.71 0.77 0.70 0.70 0.92
5 CA 0.69 0.81 0.81 0.88 0.88 0.60 0.89
'''
df = pd.read_csv(io.StringIO(data), delim_whitespace=True)
df.set_index('State', inplace=True)
ax = sns.heatmap(df)