相关疑难解决方法(0)

在Matplotlib中重置颜色循环

假设我有3种交易策略的数据,每种策略都有交易成本.我想在相同的轴上绘制6个变体中每个变量的时间序列(3个策略*2个交易成本).我想"与交易成本"线与绘制alpha=1,并linewidth=1同时我想"无交易成本"与绘制alpha=0.25linewidth=5.但我希望每个策略的两个版本的颜色都相同.

我想要的是:

fig, ax = plt.subplots(1, 1, figsize=(10, 10))

for c in with_transaction_frame.columns:
    ax.plot(with_transaction_frame[c], label=c, alpha=1, linewidth=1)

****SOME MAGIC GOES HERE TO RESET THE COLOR CYCLE

for c in no_transaction_frame.columns:
    ax.plot(no_transaction_frame[c], label=c, alpha=0.25, linewidth=5)

ax.legend()
Run Code Online (Sandbox Code Playgroud)

什么是适当的代码放在指示的行上来重置颜色循环,以便在调用第二个循环时"回到开始"?

python matplotlib pandas

50
推荐指数
3
解决办法
2万
查看次数

我可以在Seaborn的x轴上绘制日期时间的线性回归吗?

我的DataFrame对象看起来像

            amount
date    
2014-01-06  1
2014-01-07  1
2014-01-08  4
2014-01-09  1
2014-01-14  1
Run Code Online (Sandbox Code Playgroud)

我想要一种散布图,其中沿x轴的时间为时间,沿y的量为时间,并通过数据线来引导观察者的眼睛。如果我使用panadas图,df.plot(style="o")那是不太正确的,因为那条线不在那。我想要类似这里的示例。

python matplotlib dataframe pandas seaborn

8
推荐指数
2
解决办法
3865
查看次数

如何在时间序列线图上绘制回归线

我对下面计算的斜率值(以度为单位)有疑问:

import pandas as pd
import yfinance as yf
import matplotlib.pyplot as plt
import datetime as dt
import numpy as np

df = yf.download('aapl', '2015-01-01', '2021-01-01')
df.rename(columns = {'Adj Close' : 'Adj_close'}, inplace= True)

x1 = pd.Timestamp('2019-01-02')
x2 = df.index[-1]
y1 = df[df.index == x1].Adj_close[0]
y2 = df[df.index == x2].Adj_close[0]

slope = (y2 - y1)/ (x2 - x1).days
angle = round(np.rad2deg(np.arctan2(y2 - y1, (x2 - x1).days)), 1)

fig, ax1 = plt.subplots(figsize= (15, 6))
ax1.grid(True, linestyle= ':')
ax1.set_zorder(1)
ax1.set_frame_on(False)
ax1.plot(df.index, df.Adj_close, …
Run Code Online (Sandbox Code Playgroud)

python time-series matplotlib pandas scikit-learn

4
推荐指数
1
解决办法
4594
查看次数