首页 > 解决方案 > 在matplotlib python中切换背景和前景图

问题描述

代码:

from matplotlib import pyplot
import pandas

fig, axs = pyplot.subplots(figsize=(width, 5))
axs.plot(data_1, index_1,color=color)
ax2 = axs.twinx()
dataFrame = pandas.DataFrame(data={k:data}, index=index)
dataFrame.plot.bar(ax=ax2,rot=15, title=f"Timeseries analysis for {city}: {d} ({k})",alpha=foreground_opacity)

pyplot.close()

图中有多个 Y 轴。

绘制在左侧 Y 轴上的数据始终显示在背景中

并且绘制在右侧 Y 轴上的数据始终显示在背景中

这是图片

我想将背景切换到前景,反之亦然

标签: pythonmatplotlib

解决方案


我认为您可以先绘制条形图,然后再绘制折线图。绘制它们的顺序是否有任何限制?

import matplotlib.pyplot as plt
import pandas as pd

data = [10,20,30,40,50]
index = [0,1,2,3,4]
data_1 = [25,15,35,45,55]

foreground_opacity = 1.0

dataFrame = pd.DataFrame({'data':data}, index=index)

# fig, ax2 = plt.subplots(figsize=(10, 5))
axs = dataFrame.plot.bar(rot=15, alpha=foreground_opacity, figsize=(10, 5))
ax = axs.twinx()
ax.plot(index, data_1, color='r', lw=3)

# pyplot.close()
plt.show()

在此处输入图像描述


推荐阅读