【发布时间】:2020-06-24 18:09:50
【问题描述】:
我想知道是否可以在堆积面积图的相应区域中使用文本标记。
我使用 median 聚合来获取单个 X 和 Y 轴值,否则它会显示整个图表边缘的文本。不过这个聚合也不是万无一失的,好像图表有点复杂,那么X轴位置可能不是文本显示的最佳区域。
据我所知-
X=[1,2,3,4,5,6,7,8,9,1,2,3,4,5,6,7,8,9,1,2,3,4,5,6,7,8,9,1,2,3,4,5,6,7,8,9]
V=[1,1,1,2,4,8,6,4,2,1,2,3,4,5,6,7,6,5,1,1,1,1,4,8,4,2,1,1,1,3,4,5,6,6,5,4]
key=['a', 'b', 'c', 'd']
K = [y for x in key for y in (x)*9]
demo = pd.DataFrame({'X': X, 'V': V, 'K': K})
a = alt.Chart(demo).mark_area().encode(
x='X:O',
y='V:Q',
color='K:N'
)
t = alt.Chart(demo).mark_text().encode(
x='median(X):O',
y='median(V):Q',
text=alt.Text('K:N',)
)
a+t
问题
- 文本不在正确的区域。
- 文字顺序也错了。
并不是我不明白为什么我会遇到这些问题,我实际上是这样做的(Y 位置没有聚合为“堆叠”在彼此之上),但我不知道如何解决或者是否解决现在甚至是可行的。
【问题讨论】:
标签: python data-visualization altair vega-lite vega