matplotlib 3d scatter plot date

后端 未结 2 431
长情又很酷
长情又很酷 2021-01-15 16:56

I have a list of dates in format 15/10/2017

I have tried the following

from matplotlib import pyplot
import pandas as pd

dates = [\'15/         


        
2条回答
  •  迷失自我
    2021-01-15 17:51

    It's not always trivial to tell matplotlib how to translate strings into a coordinate system. Why not simply set custom tick labels for the axes?

    import pandas as pd
    from mpl_toolkits.mplot3d import Axes3D
    import matplotlib.pyplot as plt
    
    fig = plt.figure('scatter dates')
    ax = fig.add_subplot(111, projection='3d')
    dates = ['15/10/2016', '16/10/2016', "17/10/2015", "15/10/2014"]
    dates_formatted = [pd.to_datetime(d) for d in dates ]
    x = [1,2,3,4]
    y = [9,10,11,12]
    z = [5,6,7,8]
    
    ax.scatter(x, y, z)
    ax.xaxis.set_ticks(x)
    ax.xaxis.set_ticklabels(dates_formatted)
    plt.show()
    

提交回复
热议问题