python - 在seaborn中绘制两列dataFrame

标签 python plot seaborn

我正在尝试在 seaborn 中创建一个条形图,它显示数据框中每一行(因子)的两个变量(权重、方差)的值。这是我的数据:

    Factor    Weight  Variance
    Growth    10%      0.15
    Value     20%      0.35

这是我的代码:

    fig=plt.figure(figsize=(10,10))
    ax1=fig.add_subplot(221)
    sns.barplot(x=df.index, y=df[['Weight', 'Variance']], ax=ax1)

每次我无法调试时,以上都会返回一个错误。我想要实现的是有一个图,为每个因素显示两个彩色条;一种颜色的权重(例如:红色)和另一种颜色的方差(例如:蓝色)。

有人有建议或潜在的解决方法吗?

谢谢

最佳答案

除了将数据清理成整洁的格式外,您还需要将文本数据(百分比)重新格式化为数字数据类型。由于这与条形图无关,我假设您可以自己处理并专注于绘图和数据结构:

df = pandas.DataFrame({
    'Factor': ['Growth', 'Value'],
    'Weight': [0.10, 0.20],
    'Variance': [0.15, 0.35]
})
fig, ax1 = pyplot.subplots(figsize=(10, 10))
tidy = df.melt(id_vars='Factor').rename(columns=str.title)
seaborn.barplot(x='Factor', y='Value', hue='Variable', data=tidy, ax=ax1)
seaborn.despine(fig)

enter image description here

关于python - 在seaborn中绘制两列dataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40877135/

相关文章:

python - 发送添加了用户代理的 QHTTP 请求

Python Selenium driver.get() 未打开我的所有 URL

r - 如何在 R 中使用 stripchart() ?

python - Seaborn 分类数据条形图,分组

python - Seaborn 热图 : underline text in a cell

Python在wx python应用程序中轻松捕获所有Traceback(最近一次调用最后一次)

python - 从 C++ 调用 Python 函数

c - 使用 C 在 gnuplot 中设置标题和标签

linux - Linux下应该使用什么库来生成热图?

python - Matplotlib:seaborn 导入后忽略 matplotlibrc 文件