在Vega-lite中转换数据

JK

我有一个数据集,在每一行中都有多个“值”,例如:

"data": {
    "values": [
      {"date": "2020-01-01", "red":1, "green": 2},
      {"date": "2020-01-02", "red":3, "green": 4},
      {"date": "2020-01-03", "red":5, "green": 3},

    ]}

根据我对条形图的理解,每个条形都需要自己的“行”。是否有一种内置的方式可以在Vega Lite中转置以上数据并创建条形图(红色和绿色堆叠在一起,因此总计1/1上为3,1 / 2上为7,1 / 3上为8,依此类推) )?

非常感谢您的帮助,J

jakevdp

是的,这正是折叠变换的目的。例如(vega编辑器):

{
  "data": {
    "values": [
      {"date": "2020-01-01T00:00:00", "red": 1, "green": 2},
      {"date": "2020-01-02T00:00:00", "red": 3, "green": 4},
      {"date": "2020-01-03T00:00:00", "red": 5, "green": 3}
    ]
  },
  "transform": [{"fold": ["red", "green"], "as": ["color", "value"]}],
  "mark": "bar",
  "encoding": {
    "x": {"field": "date", "type": "ordinal", "timeUnit": "yearmonthdate"},
    "y": {"type": "quantitative", "field": "value"},
    "color": {"field": "color", "type": "nominal", "scale": null}
  }
}

在此处输入图片说明

一些注意事项:

  • 我将您的日期更改为ISO格式,因为这在Vega-Lite中效果最佳。Javascript日期解析行为因浏览器而异,但是所有浏览器均一致地解析ISO。
  • 设置将"scale": null导致从数据中绘制颜色,而不是从数据值到色标生成映射。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Vega Lite计算问题

来自分类Dev

vega-lite:可调选择?

来自分类Dev

在Vega / Vega-lite中绘制漏斗图

来自分类Dev

问题将字符串转换为日期vega lite

来自分类Dev

通过视图更新程序化数据后获得vega / vega-lite规格

来自分类Dev

Vega-Lite中的数据布局,图层和图例

来自分类Dev

如何在vega-lite中过滤数据?

来自分类Dev

将数据用作Vega Lite的数组而不是表

来自分类Dev

如何在vega-lite中过滤数据?

来自分类Dev

Vega-Lite中的数据布局,图层和图例

来自分类Dev

在Vega Lite中设置默认字体

来自分类Dev

Vega lite选择N个对象(数量)

来自分类Dev

Vega lite顶部和底部10

来自分类Dev

vega-lite:如何按周汇总

来自分类Dev

缩放,跟踪Vega-Lite重复图表

来自分类Dev

Vega-Lite-如何绘制箭头?

来自分类Dev

使Vega-Lite条形标记相邻

来自分类Dev

Vega-lite默认条宽度奇怪

来自分类Dev

Vega-lite中的动态比例域

来自分类Dev

Vega-Lite是否提供Vega提供的所有功能?

来自分类Dev

如何使用Vega / Vega-lite渲染类/组织/流程/状态图/图表

来自分类Dev

Vega-lite通过数据设置颜色,同时保留图例

来自分类Dev

Vega lite:具有两个带有单独过滤器的单独数据集

来自分类Dev

如何在Vega-Lite中向数据集添加额外字段

来自分类Dev

在Vega Lite中使用2D数组数据而不是表格

来自分类Dev

Vega-Lite-多个数据集的一个图

来自分类Dev

Vega-lite:根据选择自定义轴样式

来自分类Dev

vega-lite:如何动态调整单个图的大小

来自分类Dev

Vega-lite-超出图表范围时删除选择