我有以下数据帧:
{'datum': {78: Timestamp('2019-07-22 00:00:00'),
116: Timestamp('2020-04-20 00:00:00'),
31: Timestamp('2018-06-04 00:00:00'),
5: Timestamp('2017-10-30 00:00:00'),
125: Timestamp('2020-06-29 00:00:00'),
45: Timestamp('2018-10-01 00:00:00'),
14: Timestamp('2018-01-22 00:00:00'),
44: Timestamp('2018-09-24 00:00:00'),
73: Timestamp('2019-06-03 00:00:00'),
89: Timestamp('2019-10-14 00:00:00'),
130: Timestamp('2020-08-03 00:00:00'),
53: Timestamp('2018-11-26 00:00:00'),
85: Timestamp('2019-09-16 00:00:00'),
93: Timestamp('2019-11-11 00:00:00'),
29: Timestamp('2018-05-14 00:00:00'),
16: Timestamp('2018-02-05 00:00:00'),
35: Timestamp('2018-07-16 00:00:00'),
90: Timestamp('2019-10-21 00:00:00'),
83: Timestamp('2019-09-02 00:00:00'),
19: Timestamp('2018-02-26 00:00:00'),
40: Timestamp('2018-08-20 00:00:00'),
92: Timestamp('2019-11-04 00:00:00'),
122: Timestamp('2020-06-08 00:00:00'),
98: Timestamp('2019-12-16 00:00:00'),
59: Timestamp('2019-01-14 00:00:00'),
42: Timestamp('2018-09-03 00:00:00'),
33: Timestamp('2018-06-25 00:00:00'),
99: Timestamp('2019-12-23 00:00:00'),
69: Timestamp('2019-05-06 00:00:00'),
97: Timestamp('2019-12-09 00:00:00'),
17: Timestamp('2018-02-12 00:00:00'),
28: Timestamp('2018-05-07 00:00:00'),
65: Timestamp('2019-03-25 00:00:00'),
109: Timestamp('2020-03-02 00:00:00'),
115: Timestamp('2020-04-13 00:00:00'),
66: Timestamp('2019-04-01 00:00:00'),
18: Timestamp('2018-02-19 00:00:00'),
4: Timestamp('2017-10-23 00:00:00'),
111: Timestamp('2020-03-16 00:00:00'),
39: Timestamp('2018-08-13 00:00:00')},
'size': {78: 263,
116: 532,
31: 151,
5: 803,
125: 424,
45: 161,
14: 917,
44: 145,
73: 175,
89: 4,
130: 299,
53: 643,
85: 386,
93: 162,
29: 56,
16: 39,
35: 112,
90: 421,
83: 127,
19: 59,
40: 125,
92: 142,
122: 408,
98: 609,
59: 118,
42: 233,
33: 395,
99: 178,
69: 85,
97: 537,
17: 15,
28: 13,
65: 50,
109: 277,
115: 1008,
66: 133,
18: 25,
4: 23,
111: 192,
39: 68}}
每当我尝试用altair用以下代码绘制折线图时:
alt.Chart(dt_pv).mark_line().encode(
x="yearmonth(datum)",
y="size").properties(width=800)
我能描述这一点的最好方式是:当直线从一个点到另一个点时,它会一直下降到最小值,然后上升到应该在这个时间点显示的实际值。例如,在2018年5月,直线下降到X轴=0(或几乎为零),然后在同一时间点上升到300到400之间
如何使线条中的点之间的过渡更平滑,以便显示实际趋势?我的意思是,使用上面的同一个例子,即从2018年4月到5月的过渡期间,线应该直接从100到200(4月)到300到400(5月)
如果我尝试绘制条形图:
alt.Chart(dt_pv).mark_bar().encode(
x="yearmonth(datum)",
y="size").properties(width=800)
它工作得很好
所以我认为数据没有问题,但我的图表配置有问题
问题是某些日期有多个
size
值。如果想要更平滑的绘图,可以通过计算max
、min
、mean
等来聚合它们,具体取决于适合可视化的内容:相关问题 更多 >
编程相关推荐