vega-lite - 如何从星期一开始订购 vega-lite 订单日?
问题描述
我有这个规范。
{
"$schema": "https://vega.github.io/schema/vega-lite/v2.json",
"description": "Some garbage test data",
"data": {
"values": [
{"date": "01 Jan 2012 23:00:00", "price": 150},
{"date": "02 Jan 2012 00:00:00", "price": 100},
{"date": "03 Jan 2012 01:00:00", "price": 170},
{"date": "04 Jan 2012 02:00:00", "price": 165},
{"date": "05 Jan 2012 03:00:00", "price": 20},
{"date": "06 Jan 2012 03:00:00", "price": 300},
{"date": "07 Jan 2012 03:00:00", "price": 200},
{"date": "08 Jan 2012 03:00:00", "price": 300},
{"date": "09 Jan 2012 03:00:00", "price": 500}
]
},
"mark": "bar",
"encoding": {
"x": {
"field": "date",
"type": "ordinal",
"timeUnit": "day"
},
"y": {"field": "price", "type": "quantitative", "aggregate": "average"}
},
"config": {"axisY": {"minExtent": 30}}
}
这会在漂亮的图表中显示每日平均值,但是在一周从星期一开始的国家/地区,以“星期日”开头是非常奇怪的。
如何更改订单以使其从星期一开始?
解决方案
使用该sort
属性设置轴顺序:
{
"$schema": "https://vega.github.io/schema/vega-lite/v2.json",
"description": "Some garbage test data",
"data": {
"values": [
{"date": "01 Jan 2012 23:00:00", "price": 150},
{"date": "02 Jan 2012 00:00:00", "price": 100},
{"date": "03 Jan 2012 01:00:00", "price": 170},
{"date": "04 Jan 2012 02:00:00", "price": 165},
{"date": "05 Jan 2012 03:00:00", "price": 20},
{"date": "06 Jan 2012 03:00:00", "price": 300},
{"date": "07 Jan 2012 03:00:00", "price": 200},
{"date": "08 Jan 2012 03:00:00", "price": 300},
{"date": "09 Jan 2012 03:00:00", "price": 500}
]
},
"mark": "bar",
"encoding": {
"x": {
"field": "date",
"type": "ordinal",
"timeUnit": "day",
"sort": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]
},
"y": {"field": "price", "type": "quantitative", "aggregate": "average"}
},
"config": {"axisY": {"minExtent": 30}}
}
推荐阅读
- python - 如何在 Wagtail/Django 中对不同模型的查询集进行排序?
- python - 从 python shelve 库中理解同步方法
- c++ - 私有成员与私有继承
- java - Gradle fat jar 不包含库
- kotlin - 是否可以从元注释中传递值?
- c++ - GCC 可以优化具有相同主体的函数的代码大小吗?
- java - 如何将字符添加到用户光标所在的 EditText
- angular - 无法将 ViewRef 注入 Angular 组件
- c++ - 如何解释 A>* 作为 A
>* 其中 B : 公共 C ? - c# - 使用 EntityDataReader 从数据库中读取实体对象