我试图仿效牛郎星的例子"Text over a Heatmap",但遇到了一些问题
我的数据集由两个索引(N
,Z
)和一个值列color
组成
N
,Z
)李>下面附上代码的一部分
def chart_altair(self):
import altair as alt
data = self.df.dropna().reset_index(name='color')
# Configure common options
base = alt.Chart(data).encode(
alt.X('N:O'),
alt.Y('Z:O'),
)
# Configure heatmap
heatmap = base.mark_rect().encode(
color=alt.Color(
'color:Q',
scale=alt.Scale(scheme='viridis'),
legend=alt.Legend()
)
)
text = base.mark_text(baseline='middle').encode(
text='color:Q'
)
我将数据集的几行粘贴到下面,数据集由两个索引Z
、N
和一个值列color
(实际上代表一个原子质量表)组成。“热图”应该类似于原子核图,中子数增加到右x轴,质子数增加到y轴向上。然而,质子数在相反方向上增加(在负y轴上)
Z N color
0 1 8.07
1 0 7.29
1 1 13.14
1 2 14.95
2 1 14.93
1 3 24.62
2 2 2.42
3 3 14.09
4 2 18.38
2 5 26.07
3 4 14.91
4 3 15.77
5 2 27.68
下面是一个示例,其中我使用
transform_calculate
连接两个标签。您也可以通过在pandas中创建标签列来实现这一点相关问题 更多 >
编程相关推荐