使用for循环的Python可视化
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用for循环的Python可视化相关的知识,希望对你有一定的参考价值。
我有数据帧df1,df2,df3,df4,df5,df6和df7。
我正在尝试使用for循环创建7个子图的散点图。
散点图代码如下所示。对于每次迭代,我都希望将所有df更改为df1,df2,df3,df4,df5,df6和df7。
plt.scatter(np.log10(df.variable), mod1.predict(df), label='Modeled')
plt.scatter(np.log10(df.variable), df[dependent], label='Actual')
plt.title('Actual Frequency vs Modeled')
关于如何编写此for循环的任何建议?
答案
解决方案不应包含exec
。在这里,您去:
figure, axes = plt.subplots(1, 8) # 1 row, 8 cols
for i, df in enumerate([df1, df2, df3, df4, df5, df6, df7]):
plt.scatter(np.log10(df.variable), mod1.predict(df), label='Modeled', ax=axes[i])
plt.scatter(np.log10(df.variable), df[dependent], label='Actual', ax=axes[i])
plt.title('Actual Frequency vs Modeled')
我希望这会有所帮助!
另一答案
我希望以下代码段有效。
for i in range(1,8):
exec("df = df{}".format(i))
plt.scatter(np.log10(df.variable), mod1.predict(df), label='Modeled')
plt.scatter(np.log10(df.variable), df[dependent], label='Actual')
plt.title('Actual Frequency vs Modeled')
更新:
fig = plt.figure()
rows = 4
columns = 2
for i in range(1,8):
exec("df = df{}".format(i))
plt.subplot(rows, columns, i)
plt.scatter(np.log10(df.variable), mod1.predict(df), label='Modeled')
plt.scatter(np.log10(df.variable), df[dependent], label='Actual')
plt.title('Actual Frequency vs Modeled')
plt.show()
P.S .:我认为应该可以。我尚未在我的环境中对其进行测试。
以上是关于使用for循环的Python可视化的主要内容,如果未能解决你的问题,请参考以下文章
c_cpp 这个简单的代码片段显示了如何使用有符号整数在C中完成插值。 for()循环确定要插入的范围
python中的while循环与for循环怎么样那个比较好用?
如何使用引导程序和 for 循环在 django 中创建电影片段?