【问题标题】:Dollar Sign ($) gets removed from Facet on Seaborn FacetGrid美元符号 ($) 从 Seaborn FacetGrid 上的 Facet 中删除
【发布时间】:2020-12-30 14:38:11
【问题描述】:

我想在 1 个图形上创建 4 个散点图。每个构面都包含带有$ 符号的标题。在 4 个方面中的 2 个方面,$ 符号被删除。有人可以解释为什么以及如何添加$ 符号吗?我还需要从构面标题中删除 Category = 我该怎么做?

下面是复制结果的代码

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt

data = {'Price':[1.5,3,10,20],
    'Mcap':[20,30,40,50],
    'Category':['Price <= $2', '$2 < Price <= $5', '$5 < Price <= $15', 
            'Price > $15'],
    'MRR':[20,30,40,50]}

df = pd.DataFrame(data)
print(df)


plot = sns.FacetGrid(df, col="Category", col_wrap=2, height=4,
                    sharey = False)
plot.map(sns.scatterplot, "MRR", "Mcap",alpha=.7)
plt.show()

【问题讨论】:

    标签: pandas matplotlib data-visualization seaborn


    【解决方案1】:

    为转义添加反斜杠并将子图的标题设置为列表。

    import pandas as pd
    import seaborn as sns
    import matplotlib.pyplot as plt
    
    data = {'Price':[1.5,3,10,20],
        'Mcap':[20,30,40,50],
        'Category':['Price <= \$2', '\$2 < Price <= \$5', '\$5 < Price <= \$15', 
                'Price > \$15'],
        'MRR':[20,30,40,50]}
    
    df = pd.DataFrame(data)
    print(df)
    
    
    plot = sns.FacetGrid(df, col="Category", col_wrap=2, height=4,
                        sharey = False)
    plot.map(sns.scatterplot, "MRR", "Mcap",alpha=.7)
    
    sub_title = df['Category'].tolist()
    for ax, title in zip(plot.axes.flat, sub_title):
        ax.set_title(title)
    
    plt.show()
    

    【讨论】:

    • 解决方案回答了第一个问题。您能否告诉我如何从标题中删除Category =,以便我接受这个答案。
    • 忽略了另一个要求。代码和输出图已更新。
    猜你喜欢
    • 2014-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-20
    • 1970-01-01
    • 2022-01-28
    • 2020-05-30
    • 1970-01-01
    相关资源
    最近更新 更多