使用 'for' 循环为 df 中的每一列创建 Plotly 图
Create Plotly plot for each column in df with a 'for' loop
我想在 df 中使用 Python 中的 for
循环制作多个 Plotly 散点图(每列一个)。我还希望能够通过输入列名来显示图表。
查看示例代码:
import plotly.express as px
import pandas as pd
df = pd.DataFrame({'A': [3, 1, 2, 3],
'B': [5, 6, 7, 8],
'C': [2, 1, 6, 3]})
df
A B C
0 3 5 2
1 1 6 1
2 2 7 6
3 3 8 3
我得到的最接近的是这个:
for i in df.columns:
i = px.scatter(df,
x="A",
y=i)
但这无法为每个地块分配一个值。我希望能够通过输入 A 来显示 A 列的图,通过输入 B 等来显示 B 的图。
您可以将绘图添加到字典中,例如
plots = {i: px.scatter(df, x="A", y=i) for i in df.columns}
相当于但比
短
plots = {}
for i in df.columns:
plots[i] = px.scatter(df, x="A", y=i)
然后您可以用 plots['A']
、plots['B']
和 plots['C']
显示每个图
我想在 df 中使用 Python 中的 for
循环制作多个 Plotly 散点图(每列一个)。我还希望能够通过输入列名来显示图表。
查看示例代码:
import plotly.express as px
import pandas as pd
df = pd.DataFrame({'A': [3, 1, 2, 3],
'B': [5, 6, 7, 8],
'C': [2, 1, 6, 3]})
df
A B C
0 3 5 2
1 1 6 1
2 2 7 6
3 3 8 3
我得到的最接近的是这个:
for i in df.columns:
i = px.scatter(df,
x="A",
y=i)
但这无法为每个地块分配一个值。我希望能够通过输入 A 来显示 A 列的图,通过输入 B 等来显示 B 的图。
您可以将绘图添加到字典中,例如
plots = {i: px.scatter(df, x="A", y=i) for i in df.columns}
相当于但比
短plots = {}
for i in df.columns:
plots[i] = px.scatter(df, x="A", y=i)
然后您可以用 plots['A']
、plots['B']
和 plots['C']