【问题标题】:subplot using for loop in python在python中使用for循环的子图
【发布时间】:2019-05-13 03:34:47
【问题描述】:

fig, axes = plt.subplots(1, len(num_col), figsize=(100, 30))
for j,k in enumerate(num_col):
    sb.boxplot(y = k, data=data,ax = axes[j],)

我使用上面的代码制作了这个子图,但我想让它更清楚
我想清楚地看到 y 标签并为子图制作更多行。

【问题讨论】:

    标签: python-3.x pandas subplot


    【解决方案1】:

    我想让它更清楚。 我想看清楚你的标签

    对于这个问题你需要使用subplots.adjust 和ylabels fontsize

    为子图制作更多行。

    查看下方修改后的代码

    import numpy as np
    import matplotlib.pylab as plt
    import seaborn as sb
    
    data = sb.load_dataset("tips")
    num_col = data.select_dtypes(include=[np.number]).columns.tolist()
    rows = 2
    if((((len(num_col) + 1)/rows)%rows) ==0): #when num of cols are divisable by rows
        cols = (len(num_col)+1)/rows
    else:
        cols = ((len(num_col)+1)/rows) + ((len(num_col)/rows)%rows)
    
    fig, axs = plt.subplots(rows,cols, figsize=(10,10))
    fig.subplots_adjust(hspace = 0.1, wspace=0.5)
    axs = axs.ravel()
    for j,k in enumerate(num_col):
        b = sb.boxplot(y = k, data=data,ax = axs[j],)
        b.set_ylabel(k,fontsize=20)
    

    给予

    附: : 提供一小部分数据样本和完整的导入代码以使其可重现始终是一个好习惯。

    【讨论】:

    • @KenKim 如果您认为该答案有帮助,您可以正式将其标记为您的查询的答案。
    • 完成,再次感谢
    猜你喜欢
    • 2015-06-22
    • 2022-07-07
    • 2021-08-02
    • 1970-01-01
    • 2019-09-04
    • 2023-03-19
    • 1970-01-01
    • 2015-06-23
    • 1970-01-01
    相关资源
    最近更新 更多