如何在X轴上绘制”_”对象,同时在Y轴上变化值?(在Python, Matplotlib, Pandas中)

我有两个数据框A和B,我想在数据框A的图表中绘制数据框B的值,这两个数据框共享相同的索引,但在Y点上将放置两个”_”对象,一个向上移动两个点,另一个向下移动两个点,它们共享的Y值是如何做到的?

看起来像这样的图片=

enter image description here

数据框:数据框A

    Date    2015-08-31  112.760002    2015-09-01  107.720001    2015-09-02  112.339996    2015-09-03  110.370003    2015-09-04  109.269997    2015-09-08  112.309998    2015-09-09  110.150002    2015-09-10  112.570000    2015-09-11  114.209999    2015-09-14  115.309998数据框B                Close    2015-08-31  112.760002    2015-09-01  107.720001    2015-09-02  112.339996    2015-09-08  112.309998

回答:

不太确定完全理解您的期望,但您应该可以使用以下方法处理:

import pandas as pdimport matplotlib.pyplot as pltdata_a={"date":["2015-08-31","2015-09-01", "2015-09-02","2015-09-03","2015-09-04","2015-09-08","2015-09-09","2015-09-10","2015-09-11","2015-09-14"],"val":[112.760002,107.720001,112.339996,110.370003,109.269997,112.309998,110.150002,112.570000,114.209999,115.309998]}data_b={"date":["2015-08-31","2015-09-01","2015-09-11","2015-09-14"],"val":[112.760002,107.720001,114.209999,115.309998]}df_a=pd.DataFrame(data_a)df_b= pd.DataFrame(data_b)df_a['date']=pd.to_datetime(df_a['date'],format='%Y-%m-%d', errors='ignore')df_b['date']=pd.to_datetime(df_b['date'],format='%Y-%m-%d', errors='ignore')fig, ax = plt.subplots()ax.plot(df_a['date'],df_a["val"],color='red')ax.scatter(df_b['date'],df_b["val"]-1,marker="_",s=30,facecolor='green')ax.scatter(df_b['date'],df_b["val"]+1,marker="_",s=30,facecolor='green')plt.show()

结果:enter image description here

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注