我目前正在尝试将1080图形卡的价格相对于比特币的价格随时间变化,但Y轴的标尺距离还很远。到目前为止,这是我的代码:
import pandas as pd
from datetime import date
import matplotlib.pyplot as plt
from matplotlib.pyplot import *
import numpy as np
GPUDATA = pd.read_csv("1080Prices.csv")
BCDATA = pd.read_csv("BitcoinPrice.csv")
date = pd.to_datetime(GPUDATA["Date"])
price = GPUDATA["Price_USD"]
date1 = pd.to_datetime(BCDATA["Date"])
price1 = BCDATA["Close"]
plot(date, price)
plot(date1, price1)
这将产生此结果:
GPU价格当然是蓝色,比特币的价格是橙色。我对可视化还很陌生,现在很难在网上找到可以帮助解决此问题的任何内容。我在这里找到的一些建议似乎与从单个数据源绘制数据有关,但是我的数据来自2个数据源。
一个在给定的一天中记录了GPU的价格,另一个在给定的一天中记录了比特币的开盘价,收盘价,最高价和最低价。我正在努力寻找解决方案,任何建议都将受到欢迎!谢谢!
答案 0 :(得分:1)
您想要做的是X轴 twin ,这样两个图将共享X轴,但具有单独的Y轴。可以通过以下方式完成:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
GPUDATA = pd.read_csv("1080Prices.csv")
BCDATA = pd.read_csv("BitcoinPrice.csv")
gpu_dates = pd.to_datetime(GPUDATA["Date"])
gpu_prices = GPUDATA["Price_USD"]
btc_dates = pd.to_datetime(BCDATA["Date"])
btc_prices = BCDATA["Close"]
fig, ax1 = plt.subplots()
ax2 = ax1.twinx() # Create a new Axes object sharing ax1's x-axis
ax1.plot(gpu_dates, gpu_prices, color='blue')
ax2.plot(btc_dates, btc_prices, color='red')
由于您尚未提供示例数据,因此我无法展示相关的演示,但这应该可行。