Tôi cần tạo bản đồ nhiệt MatplotLib (pcolormesh) bằng cột Thời gian Pandas DataFrame (df_all.ts) làm trục X của tôi.Tạo bản đồ nhiệt bằng cách sử dụng gấu trúc TimeSeries
Làm thế nào để chuyển đổi cột Pandas TimeSeries thành một thứ có thể dùng làm trục X trong hàm np.meshgrid (x, y) để tạo bản đồ nhiệt? Cách giải quyết là tạo Matplotlib drange bằng các tham số giống như trong cột gấu trúc, nhưng có cách đơn giản không?
x = pd.date_range(df_all.ts.min(),df_all.ts.max(),freq='H')
xt = mdates.drange(df_all.ts.min(), df_all.ts.max(), dt.timedelta(hours=1))
y = arange(ylen)
X,Y = np.meshgrid(xt, y)
Nếu không có một Defi rõ ràng nition của những gì bạn muốn, tôi giả sử heatmap của bạn là một biểu đồ 2D đơn giản. Vậy tại sao bạn không resample/pivot DF của bạn để điều này và âm mưu nó với 'plt.imshow (df_all.values)'? –
Tôi chỉ cần 5-20 mục trên trục Y, vì tôi hiểu imshow() yêu cầu chỉ định mọi điểm của biểu đồ – szu
Bạn luôn có thể gắn nhãn lại trục theo dữ liệu trong cột TimeSeries. Đừng căng thẳng về việc buộc các hàm matplotlib sử dụng chính xác dữ liệu đó như dữ liệu trục x nếu vẽ như một hình ảnh hoạt động và sau đó điều chỉnh các nhãn trục. – ely