Vega チュートリアルにあるものと同様の形式で、 Vincentにデータ配列を作成しようとしています。
...
"data": [
{
"name": "table",
"values": [
{"x":"A", "y":28}, {"x":"B", "y":55}, {"x":"C", "y":43},
{"x":"D", "y":91}, {"x":"E", "y":81}, {"x":"F", "y":53},
{"x":"G", "y":19}, {"x":"H", "y":87}, {"x":"I", "y":52}
]
}
],
...
しかし、私はそれを行う方法を理解していません。Data.from_iter() および Data.from_mult_iter() を使用するには、データに明示的なインデックスと列名が必要です。data.keypairs() は有望に見えると思いましたが、劇的に異なる形式も生成されました。
これまでのいくつかの試みを次に示します。
In [1]: coor = {'x': ['A', 'B', 'C'], 'y': [28, 55, 43]}
In [2]: data = Data.keypairs(coor)
In [3]: print data.to_json()
{
"name": "table",
"values": [
{ "x": "x", "y": ["A","B","C"]},
{ "x": "y", "y": [28,55,43]}
]
}
In [4]: data = Data.from_iter(coor)
In [5]: print data.to_json()
{
"name": "table",
"values": [
{"col": "data", "idx": "x", "val": ["A", "B", "C"]},
{"col": "data", "idx": "y", "val": [28, 55, 43]}
]
}
In [5]: coor = [{'x':'A', 'y':28}, {'x':'B', 'y':55}, {'x':'C', 'y':43}]
In [6]: data = Data.keypairs(coor)
In [7]: print data.to_json()
{
"name": "table",
"values": [
{"x": 0, "y": {"x": "A", "y": 28}},
{"x": 1, "y": {"x": "B", "y": 55}},
{"x": 2, "y": {"x": "C", "y": 43}}
]
}
In [8]: data = Data.from_iter(coor)
In [9]: print data.to_json()
{
"name": "table",
"values": [
{"col": "data", "idx": 0, "val": {"x": "A", "y": 28}},
{"col": "data", "idx": 1, "val": {"x": "B", "y": 55}},
{"col": "data", "idx": 2, "val": {"x": "C", "y": 43}}
]
}
Vincent を使用して上記の形式を作成する方法を知っている人はいますか? 次のような 3 つのキーと値のペアを持つオブジェクトが必要な場合はどうすればよいでしょうか。
...
"data": [
{
"name": "table",
"values": [
{"x":"A", "y":28, "z":34}, {"x":"B", "y":55, "z":21}, ...
]
}
],
...
助けてくれてどうもありがとう!