尝试创建多个图表并将其保存为一个图像。我成功地组合了多个图表,但是有几件事情出了问题。由于某些原因,不能仅为最后一个图表设置所有图表的点滴。此外,数字并没有像上一张图表那样完整地显示。还想改变颜色的线条(白色),标签(白色),背景(黑色),并旋转一个日期,这样它将很容易阅读。
dataSet = {"info":[{"title":{"Value":[list of data]}},{"title":{"Value":[list of data]}},
...]}
fig, ax = plt.subplots(2, 3, sharex=False, sharey=False, figsize=(22, 10), dpi=70,
linewidth=0.5)
ax = np.array(ax).flatten()
for i, data in enumerate(dataSet['info']):
for key in data:
df: DataFrame = pd.DataFrame.from_dict(data[key]).fillna(method="backfill")
df['Date'] = pd.to_datetime(df['Date'], unit='ms')
df.index = pd.DatetimeIndex(df['Date'])
x = df['Date']
y = df['Value']
ax[i].plot(x, y)
current_values = plt.gca().get_yticks()
plt.gca().set_yticklabels(['{:,.0f}'.format(x) for x in current_values])
plt.title(key)
plt.show()
发布于 2022-02-18 08:51:33
您的图形由不同的轴对象组成。要设置每个绘图的标题,您需要使用相应的axes对象,该对象提供了更改外观所需的相关方法。例如,见:
import matplotlib.pyplot as plt
import numpy as np
fig, axarr = plt.subplots(2, 2)
titles = list("abcd")
for ax, title in zip(axarr.ravel(), titles):
x = np.arange(10)
y = np.random.random(10)
ax.plot(x, y, color='white')
ax.set_title(title)
ax.set_facecolor((0, 0, 0))
fig.tight_layout()
为了改变标签,显示图例,改变背景,我建议阅读文档。对于日期,可以旋转标签或使用fig.autofmt_xdate()
。
https://stackoverflow.com/questions/71170297
复制相似问题