如何在打孔卡中使用所有圆圈大小?
How to use all circle sizes in a punchcard?
This VEGA-lite demo of Table Bubble Plot 使用所有尺寸,从小圆到大圆。
我的脚本(如下图所示)未使用,只有 2 或 3 种尺寸。如何强制或告诉 VEGA-lite 使用所有圆尺寸?
{
"$schema": "https://vega.github.io/schema/vega-lite/v4.json",
"data": { "url":"/_sql/myTable"},
"mark": "circle",
"encoding": {
"y": {
"field": "instant",
"type": "ordinal",
"timeUnit": "day",
"sort": ["mon", "tue", "wed", "thu", "fri", "sat", "sun"]
},
"x": {
"field": "instant",
"type": "ordinal",
"timeUnit": "hours"
},
"size": {
"field": "n_pmin",
"type": "quantitative",
"aggregate": "avg"
},
"color": {
"field": "n_pmin",
"type": "quantitative",
"aggregate": "avg"
}
}
}
PS: ideal也把"only blue"渐变改成了"bluegreen",但是我没看到怎么把color设置成color。
注意事项
对于@Jim 请求,示例:
[{"instant":"2020-04-23T14:46:42","n_pmin":2210086},
{"instant":"2020-04-23T15:05:01","n_pmin":2214909},
{"instant":"2020-04-23T16:05:01","n_pmin":2159652},
{"instant":"2020-04-23T17:05:01","n_pmin":2290159},
{"instant":"2020-04-23T18:05:01","n_pmin":2235739},
{"instant":"2020-04-23T19:05:01","n_pmin":2505914},
{"instant":"2020-04-23T20:05:01","n_pmin":2517069},
{"instant":"2020-04-23T21:05:01","n_pmin":2492883},
{"instant":"2020-04-23T22:05:01","n_pmin":2535839},
{"instant":"2020-04-23T23:05:01","n_pmin":2519568},
{"instant":"2020-04-24T00:05:02","n_pmin":2367309},
{"instant":"2020-04-24T01:05:01","n_pmin":2384885},
{"instant":"2020-04-24T02:05:01","n_pmin":2340421},
{"instant":"2020-04-24T03:05:01","n_pmin":2369579},
{"instant":"2020-04-24T04:05:01","n_pmin":2285203},
{"instant":"2020-04-24T05:05:01","n_pmin":2206629},
{"instant":"2020-04-24T06:05:01","n_pmin":2149411},
{"instant":"2020-04-24T07:05:01","n_pmin":2218313},
{"instant":"2020-04-24T08:05:01","n_pmin":2231320},
{"instant":"2020-04-24T09:05:01","n_pmin":2163876},
{"instant":"2020-04-24T10:05:01","n_pmin":2100388},
{"instant":"2020-04-24T11:05:01","n_pmin":2040520},
{"instant":"2020-04-24T12:05:02","n_pmin":2157928},
{"instant":"2020-04-24T13:05:01","n_pmin":2099753},
{"instant":"2020-04-24T15:05:01","n_pmin":2334844},
{"instant":"2020-04-24T16:05:01","n_pmin":2430831},
{"instant":"2020-04-24T17:05:01","n_pmin":2403722},
{"instant":"2020-04-24T18:05:02","n_pmin":2468541},
{"...":"..."},
{"instant":"2020-05-13T16:05:01","n_pmin":2717164},
{"instant":"2020-05-13T17:05:01","n_pmin":2794972},
{"instant":"2020-05-13T18:05:01","n_pmin":2824981},
{"instant":"2020-05-13T19:05:01","n_pmin":2852586},
{"instant":"2020-05-13T20:05:01","n_pmin":2868170}]
主要问题的简短回答,
How to enforce or say to VEGA-lite use all circle sizes?
说 "zero": false
。
但是,让我们更详细地了解如何以更手工的方式进行操作,以了解何时可以将 scale.zero
设置为 false
作为更快的解决方案。
您可以使用相关编码中的 scale
规范调整您感兴趣的属性。
对于配色方案,您可以将 scale.scheme
设置为 Vega Color Schemes 中列出的任何选项。
对于大小,您可以将scale.domain
和scale.range
设置为所需的值,其中domain
是数据space中数字的范围,range
是以方形像素为单位的相关图例标记的面积。
或者,您可以将 scale.zero
设置为 false
以自动调整域,并省略零值(这是导致图表中出现 "missing" 圆圈的原因) .
使用您提供的示例数据 (vega editor) 将其放在一起,可能如下所示:
{
"$schema": "https://vega.github.io/schema/vega-lite/v4.json",
"data": {
"values": [
{"instant": "2020-04-23T14:46:42", "n_pmin": 2210086},
{"instant": "2020-04-23T15:05:01", "n_pmin": 2214909},
{"instant": "2020-04-23T16:05:01", "n_pmin": 2159652},
{"instant": "2020-04-23T17:05:01", "n_pmin": 2290159},
{"instant": "2020-04-23T18:05:01", "n_pmin": 2235739},
{"instant": "2020-04-23T19:05:01", "n_pmin": 2505914},
{"instant": "2020-04-23T20:05:01", "n_pmin": 2517069},
{"instant": "2020-04-23T21:05:01", "n_pmin": 2492883},
{"instant": "2020-04-23T22:05:01", "n_pmin": 2535839},
{"instant": "2020-04-23T23:05:01", "n_pmin": 2519568},
{"instant": "2020-04-24T00:05:02", "n_pmin": 2367309},
{"instant": "2020-04-24T01:05:01", "n_pmin": 2384885},
{"instant": "2020-04-24T02:05:01", "n_pmin": 2340421},
{"instant": "2020-04-24T03:05:01", "n_pmin": 2369579},
{"instant": "2020-04-24T04:05:01", "n_pmin": 2285203},
{"instant": "2020-04-24T05:05:01", "n_pmin": 2206629},
{"instant": "2020-04-24T06:05:01", "n_pmin": 2149411},
{"instant": "2020-04-24T07:05:01", "n_pmin": 2218313},
{"instant": "2020-04-24T08:05:01", "n_pmin": 2231320},
{"instant": "2020-04-24T09:05:01", "n_pmin": 2163876},
{"instant": "2020-04-24T10:05:01", "n_pmin": 2100388},
{"instant": "2020-04-24T11:05:01", "n_pmin": 2040520},
{"instant": "2020-04-24T12:05:02", "n_pmin": 2157928},
{"instant": "2020-04-24T13:05:01", "n_pmin": 2099753},
{"instant": "2020-04-24T15:05:01", "n_pmin": 2334844},
{"instant": "2020-04-24T16:05:01", "n_pmin": 2430831},
{"instant": "2020-04-24T17:05:01", "n_pmin": 2403722},
{"instant": "2020-04-24T18:05:02", "n_pmin": 2468541},
{"instant": "2020-05-13T16:05:01", "n_pmin": 2717164},
{"instant": "2020-05-13T17:05:01", "n_pmin": 2794972},
{"instant": "2020-05-13T18:05:01", "n_pmin": 2824981},
{"instant": "2020-05-13T19:05:01", "n_pmin": 2852586},
{"instant": "2020-05-13T20:05:01", "n_pmin": 2868170}
]
},
"mark": "circle",
"encoding": {
"y": {
"field": "instant",
"type": "ordinal",
"timeUnit": "day",
"sort": ["mon", "tue", "wed", "thu", "fri", "sat", "sun"]
},
"x": {"field": "instant", "type": "ordinal", "timeUnit": "hours"},
"size": {
"field": "n_pmin",
"type": "quantitative",
"aggregate": "mean",
"scale": {"domain": [2200000, 3000000], "range": [100, 500]}
},
"color": {
"field": "n_pmin",
"type": "quantitative",
"aggregate": "mean",
"scale": {"domain": [2200000, 3000000], "scheme": "bluegreen"}
}
}
}
动态数据的自动非零拟合
动态数据(例如刷新网页时的新数据)是我们不能使用常量域范围的典型情况。在另一个图表 on VEGA editor 中,scale.zero
(颜色和尺寸)都设置为 false
,导致自动缩放范围调整:
"size": {
"field": "n_pmin",
"type": "quantitative",
"aggregate": "mean",
"scale": {"zero": false }
},
"color": {
"field": "n_pmin",
"type": "quantitative",
"aggregate": "mean",
"scale": {"scheme": "bluegreen", "zero": false}
}
This VEGA-lite demo of Table Bubble Plot 使用所有尺寸,从小圆到大圆。
我的脚本(如下图所示)未使用,只有 2 或 3 种尺寸。如何强制或告诉 VEGA-lite 使用所有圆尺寸?
{
"$schema": "https://vega.github.io/schema/vega-lite/v4.json",
"data": { "url":"/_sql/myTable"},
"mark": "circle",
"encoding": {
"y": {
"field": "instant",
"type": "ordinal",
"timeUnit": "day",
"sort": ["mon", "tue", "wed", "thu", "fri", "sat", "sun"]
},
"x": {
"field": "instant",
"type": "ordinal",
"timeUnit": "hours"
},
"size": {
"field": "n_pmin",
"type": "quantitative",
"aggregate": "avg"
},
"color": {
"field": "n_pmin",
"type": "quantitative",
"aggregate": "avg"
}
}
}
PS: ideal也把"only blue"渐变改成了"bluegreen",但是我没看到怎么把color设置成color。
注意事项
对于@Jim 请求,示例:
[{"instant":"2020-04-23T14:46:42","n_pmin":2210086},
{"instant":"2020-04-23T15:05:01","n_pmin":2214909},
{"instant":"2020-04-23T16:05:01","n_pmin":2159652},
{"instant":"2020-04-23T17:05:01","n_pmin":2290159},
{"instant":"2020-04-23T18:05:01","n_pmin":2235739},
{"instant":"2020-04-23T19:05:01","n_pmin":2505914},
{"instant":"2020-04-23T20:05:01","n_pmin":2517069},
{"instant":"2020-04-23T21:05:01","n_pmin":2492883},
{"instant":"2020-04-23T22:05:01","n_pmin":2535839},
{"instant":"2020-04-23T23:05:01","n_pmin":2519568},
{"instant":"2020-04-24T00:05:02","n_pmin":2367309},
{"instant":"2020-04-24T01:05:01","n_pmin":2384885},
{"instant":"2020-04-24T02:05:01","n_pmin":2340421},
{"instant":"2020-04-24T03:05:01","n_pmin":2369579},
{"instant":"2020-04-24T04:05:01","n_pmin":2285203},
{"instant":"2020-04-24T05:05:01","n_pmin":2206629},
{"instant":"2020-04-24T06:05:01","n_pmin":2149411},
{"instant":"2020-04-24T07:05:01","n_pmin":2218313},
{"instant":"2020-04-24T08:05:01","n_pmin":2231320},
{"instant":"2020-04-24T09:05:01","n_pmin":2163876},
{"instant":"2020-04-24T10:05:01","n_pmin":2100388},
{"instant":"2020-04-24T11:05:01","n_pmin":2040520},
{"instant":"2020-04-24T12:05:02","n_pmin":2157928},
{"instant":"2020-04-24T13:05:01","n_pmin":2099753},
{"instant":"2020-04-24T15:05:01","n_pmin":2334844},
{"instant":"2020-04-24T16:05:01","n_pmin":2430831},
{"instant":"2020-04-24T17:05:01","n_pmin":2403722},
{"instant":"2020-04-24T18:05:02","n_pmin":2468541},
{"...":"..."},
{"instant":"2020-05-13T16:05:01","n_pmin":2717164},
{"instant":"2020-05-13T17:05:01","n_pmin":2794972},
{"instant":"2020-05-13T18:05:01","n_pmin":2824981},
{"instant":"2020-05-13T19:05:01","n_pmin":2852586},
{"instant":"2020-05-13T20:05:01","n_pmin":2868170}]
主要问题的简短回答,
How to enforce or say to VEGA-lite use all circle sizes?
说 "zero": false
。
但是,让我们更详细地了解如何以更手工的方式进行操作,以了解何时可以将 scale.zero
设置为 false
作为更快的解决方案。
您可以使用相关编码中的 scale
规范调整您感兴趣的属性。
对于配色方案,您可以将 scale.scheme
设置为 Vega Color Schemes 中列出的任何选项。
对于大小,您可以将scale.domain
和scale.range
设置为所需的值,其中domain
是数据space中数字的范围,range
是以方形像素为单位的相关图例标记的面积。
或者,您可以将 scale.zero
设置为 false
以自动调整域,并省略零值(这是导致图表中出现 "missing" 圆圈的原因) .
使用您提供的示例数据 (vega editor) 将其放在一起,可能如下所示:
{
"$schema": "https://vega.github.io/schema/vega-lite/v4.json",
"data": {
"values": [
{"instant": "2020-04-23T14:46:42", "n_pmin": 2210086},
{"instant": "2020-04-23T15:05:01", "n_pmin": 2214909},
{"instant": "2020-04-23T16:05:01", "n_pmin": 2159652},
{"instant": "2020-04-23T17:05:01", "n_pmin": 2290159},
{"instant": "2020-04-23T18:05:01", "n_pmin": 2235739},
{"instant": "2020-04-23T19:05:01", "n_pmin": 2505914},
{"instant": "2020-04-23T20:05:01", "n_pmin": 2517069},
{"instant": "2020-04-23T21:05:01", "n_pmin": 2492883},
{"instant": "2020-04-23T22:05:01", "n_pmin": 2535839},
{"instant": "2020-04-23T23:05:01", "n_pmin": 2519568},
{"instant": "2020-04-24T00:05:02", "n_pmin": 2367309},
{"instant": "2020-04-24T01:05:01", "n_pmin": 2384885},
{"instant": "2020-04-24T02:05:01", "n_pmin": 2340421},
{"instant": "2020-04-24T03:05:01", "n_pmin": 2369579},
{"instant": "2020-04-24T04:05:01", "n_pmin": 2285203},
{"instant": "2020-04-24T05:05:01", "n_pmin": 2206629},
{"instant": "2020-04-24T06:05:01", "n_pmin": 2149411},
{"instant": "2020-04-24T07:05:01", "n_pmin": 2218313},
{"instant": "2020-04-24T08:05:01", "n_pmin": 2231320},
{"instant": "2020-04-24T09:05:01", "n_pmin": 2163876},
{"instant": "2020-04-24T10:05:01", "n_pmin": 2100388},
{"instant": "2020-04-24T11:05:01", "n_pmin": 2040520},
{"instant": "2020-04-24T12:05:02", "n_pmin": 2157928},
{"instant": "2020-04-24T13:05:01", "n_pmin": 2099753},
{"instant": "2020-04-24T15:05:01", "n_pmin": 2334844},
{"instant": "2020-04-24T16:05:01", "n_pmin": 2430831},
{"instant": "2020-04-24T17:05:01", "n_pmin": 2403722},
{"instant": "2020-04-24T18:05:02", "n_pmin": 2468541},
{"instant": "2020-05-13T16:05:01", "n_pmin": 2717164},
{"instant": "2020-05-13T17:05:01", "n_pmin": 2794972},
{"instant": "2020-05-13T18:05:01", "n_pmin": 2824981},
{"instant": "2020-05-13T19:05:01", "n_pmin": 2852586},
{"instant": "2020-05-13T20:05:01", "n_pmin": 2868170}
]
},
"mark": "circle",
"encoding": {
"y": {
"field": "instant",
"type": "ordinal",
"timeUnit": "day",
"sort": ["mon", "tue", "wed", "thu", "fri", "sat", "sun"]
},
"x": {"field": "instant", "type": "ordinal", "timeUnit": "hours"},
"size": {
"field": "n_pmin",
"type": "quantitative",
"aggregate": "mean",
"scale": {"domain": [2200000, 3000000], "range": [100, 500]}
},
"color": {
"field": "n_pmin",
"type": "quantitative",
"aggregate": "mean",
"scale": {"domain": [2200000, 3000000], "scheme": "bluegreen"}
}
}
}
动态数据的自动非零拟合
动态数据(例如刷新网页时的新数据)是我们不能使用常量域范围的典型情况。在另一个图表 on VEGA editor 中,scale.zero
(颜色和尺寸)都设置为 false
,导致自动缩放范围调整:
"size": {
"field": "n_pmin",
"type": "quantitative",
"aggregate": "mean",
"scale": {"zero": false }
},
"color": {
"field": "n_pmin",
"type": "quantitative",
"aggregate": "mean",
"scale": {"scheme": "bluegreen", "zero": false}
}