gpt4 book ai didi

python - 如何从具有多行的 2 个不同数据集创建可视化?

转载 作者:太空宇宙 更新时间:2023-11-03 21:03:49 25 4
gpt4 key购买 nike

我正在尝试绘制 GPU 价格与加密货币价格的对比图。

我已经能够创建 2 个独立的可视化效果,分别显示 GPU 的平均价格和加密货币的平均价格,但似乎无法将它们结合起来。

...
plt.plot(GPUDATA.groupby(GPUDATA['Date'].dt.strftime('%Y')['Price_USD'].mean())
...

这会生成“GPU 价格”的图像:
Image

plt.plot(BITCOINDATA.groupby(BITCOINDATA['Date'].dt.strftime('%Y'))['Open'].mean())

这会产生“加密价格”的图像:
Crypto

我需要将这两种可视化组合成一张图表。我对创建可视化不太熟悉,所以我不确定还需要提供多少信息。我很乐意提供任何更多需要的信息!谢谢!

编辑:数据框中的条目列出了产品的 ID,然后是日期,然后是该日期产品的价格。因此,GPU 数据帧和加密数据帧上都有很多重复的年份和 ID,这就是我按函数进行分组的原因。

最佳答案

这是一个为每个系列创建单独的 y 轴的解决方案。我生成了随机数据,这就是图表看起来不同的原因。您可以修改下面每个 y 轴的下限和上限等参数。

import matplotlib.pyplot as plt

fig, ax1 = plt.subplots(figsize=(10,10))
ax2 = ax1.twinx()

ax1.plot(GPUDATA.groupby(GPUDATA['Date'].dt.strftime('%Y'))['Price_USD'].mean(),'r', label = 'Avg GPU Prices')
ax1.set_ylabel("Avg GPU Price", color='r', fontsize=20)
ax1.set_ylim(350,600)
ax1.tick_params(axis='y', colors= 'r', labelsize=14)
ax1.tick_params(axis='x', colors= 'k', labelsize=14)

ax2.plot(BITCOINDATA.groupby(BITCOINDATA['Date'].dt.strftime('%Y'))['Open'].mean(), 'b', label = 'Avg Crypto Prices')
ax2.set_ylabel("Avg Crypto Price", color='b', fontsize=20)
ax2.set_ylim(0, 900)
ax2.tick_params(axis='y', colors= 'b', labelsize=14)

lines, labels = ax1.get_legend_handles_labels()
lines2, labels2 = ax2.get_legend_handles_labels()
ax1.legend(lines + lines2, labels + labels2, loc=2, fontsize=20)

ax1.grid(b=False)
ax2.grid(b=False)

plt.title("Yearly Average GPU and Crypto Prices", fontsize=25)
plt.show()

enter image description here

关于python - 如何从具有多行的 2 个不同数据集创建可视化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55555433/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com