- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 Python 中的 Vincent 创建 StackedBar 可视化。数据来自 pandas dataframe,每列代表一个百分比,每行总和为 100%
Vincent/Vega 正在尝试提供帮助并向 Y 轴添加一个缓冲区,以便在我想要 100 时它最大为 110 (%)。
我需要添加的属性是 Y 尺度语法中的“domainMax”,但我不知道如何在导入 Pandas 数据帧后使用 Vincent 的 PropertySet 或类似命令来添加它。
这是一个手动添加 domainMax 的数据示例,任何人都可以建议如何在 Python 中执行此操作
"scales": [
{
"domain": {
"data": "table",
"field": "data.idx"
},
"name": "x",
"range": "width",
"type": "ordinal"
},
{
"domain": {
"data": "stats",
"field": "sum"
},
"name": "y",
"nice": true,
"range": "height",
"type": "linear",
"domainMax": 100
}
[...]
最佳答案
问题是 Vincent 和 Vega 使用的命名约定略有不同,而这在 Vincent 文档中没有明确说明。
Vega 在他们的文档 [1] 中有“domainMax”,而您需要定位的 Vincent 属性是“domain_max”,可以在 Scales.py [2] 中找到
所以解决方案是:chart.scales[ref].domain_max = value
实践中:
chart = vincent.StackedBar(dataframe)
chart.scales[1].domain_max = 100
chart.display()
[1] https://github.com/trifacta/vega/wiki/Scales
[2] https://github.com/wrobstory/vincent/blob/master/vincent/scales.py#L77
关于python - 使用 Vincent 将 'domainMax' 属性添加到现有的 Vega 可视化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20531715/
我正在使用 Python 中的 Vincent 创建 StackedBar 可视化。数据来自 pandas dataframe,每列代表一个百分比,每行总和为 100% Vincent/Vega 正在
我是一名优秀的程序员,十分优秀!