px.bar(df, x=‘trade_date’, y=[‘close’, ‘vol’, ‘pct_chg’, ‘aaa’], barmode=‘group’)如何按不同的y轴数据分类显示但共用一个x轴,请给出一个示例代码
时间: 2024-10-06 14:04:41 浏览: 26
`px.bar(df, x='trade_date', y=['close', 'vol', 'pct_chg', 'aaa'], barmode='group')` 这段代码是在使用 Plotly Express (px) 库对 pandas DataFrame (df) 中的数据进行可视化,它创建了一个分组柱状图。这里的参数说明如下:
- `df`: 要处理的数据集。
- `x='trade_date'`: 指定横坐标 (x-axis),通常是时间序列数据,这里是交易日期。
- `y=['close', 'vol', 'pct_chg', 'aaa']`: 列表中的每个元素将作为单独的一列,并在同一图表上以独立的系列形式展示(每个y值对应一个颜色区分的柱子)。
- `barmode='group'`: 设置为 'group' 表明每个 `y` 值对应的柱子将会并排放置在同一组内,形成分组的效果。
如果你想按不同的 y 值分类显示,但共享一个 x 轴,你应该保留 `x='trade_date'` 参数不变,而 `y` 参数可以是一个列表,其中包含你想分开显示的不同列名。每个单独的列名将会作为一个类别,共享相同的 x 轴。这里是一个简单的示例代码:
```python
import plotly.express as px
import pandas as pd
# 假设 df 是你的数据框
df = pd.DataFrame(...)
# 示例 y 参数,表示按 close、vol 和 pct_chg 分别绘制
fig = px.bar(df, x='trade_date', y=['close', 'vol', 'pct_chg'], barmode='group')
# 如果还有一列 'aaa',可以添加到 figure 上,它会作为单独的系列
fig.add_bar(x='trade_date', y=df['aaa'])
fig.show()
```
阅读全文