所有值均为正值时面积图的绘图比例

海盗

我正在尝试生成混合图表arealine图表。考虑我的数据框df

df = pd.DataFrame([range(1, 4)] * 5, columns=list('ABC')).assign(B=lambda d: -d.B).cumsum()

还有我的图表

df.C.plot.area(stacked=False)
df.A.plot()
df.B.plot()

在此处输入图片说明

请注意,否定系列没有出现。
现在假设我将系列C一个条目设为负值

df.loc[3, 'C'] = -1

并再次情节

df.C.plot.area(stacked=False)
df.A.plot()
df.B.plot()

在此处输入图片说明

这是我所期望的。但是,我确实有C所有系列的数据,这都是一个符号。我如何绘制它,以使其他系列的比例尺不被破坏?


MCVE

# messed up
import pandas as pd

df = pd.DataFrame([range(1, 4)] * 5, columns=list('ABC')).assign(B=lambda d: -d.B).cumsum()

df.C.plot.area(stacked=False)
df.A.plot()
df.B.plot()

# correct but I have to put false data
import pandas as pd

df = pd.DataFrame([range(1, 4)] * 5, columns=list('ABC')).assign(B=lambda d: -d.B).cumsum()
df.loc[3, 'C'] = -1

df.C.plot.area(stacked=False)
df.A.plot()
df.B.plot()
T先生

我不知道,为什么会发生这个错误。*但是您可以强制执行自动缩放如果只想自动缩放一个轴,则可以指定它:

#not messed up anymore
import pandas as pd

df = pd.DataFrame([range(1, 4)] * 5, columns=list('ABC')).assign(B=lambda d: -d.B).cumsum()

df.C.plot.area(stacked=False)
df.A.plot()
df.B.plot()

plt.autoscale(True, axis = "y")
plt.show()

输出:
在此处输入图片说明

*正如@ImportanceOfBeingErnest在评论中指出的那样,这不是错误,而是面积图的理想行为,很不幸,它与此处的线图冲突。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

堆叠的条形图显示所有值均为0高图时悬挂的零

Matplotlib:所有组的堆积面积图

仅当所有值均为0或NA时才删除行

MySQL仅在所有行均为WHERE的值时才返回单行

当所有值均为0时,隐藏堆积栏上的列

当且仅当所有值均为NA时,才删除命名列

当发布到ASP.NET Core中的控制器时,所有值均为null

数据框:当列中的所有值均为空时,删除子集中的列

仅当网格中的所有值均为int时,Google Apps脚本ui启用按钮

C#图表控件:对于系列中的所有点,水平条形图的X值均为0

当饼图中的所有数据均为0时,如何显示“饼图不可用”消息?

当其他值均为0时,计算特定值相对于所有值之和的百分比

如何制作嵌套比例面积图(圆圈)?

ggplot-比例堆积面积图

尽管值已更改,但所有值均为真

如何获得表中所有正值的最小值?

如果所有值均为大写,是否需要UpperCase Index?

熊猫-检查序列中所有值是否均为NaN

从所有值均为0的SQL输出中删除列

熊猫-如果dataFrame的所有值均为NaN

如果R的所有值均为0,则填充0

CSV到SQL,但所有值均为NULL

getComputedStyle返回CSSStyleDeclaration,但访问时所有属性均为空

当所有测试均为最新时,如何运行Gradle测试?

所有规格均为“ 0”时的默认WAV描述

选中时,所有 Entry 输入均为红色

当所有值均为非负数时,我们真的可以避免多余的空间吗?

当图表的所有数据均为0时,将vaxis Google折线图最小值设置为0

使用比例绘图时的问题