瀑布图(Waterfall Plot)是一种用于可视化三维数据的图表,可以展示数据随时间或其他变量的变化。

import numpy as np
import matplotlib.pyplot as plt

def waterfall_plot(time, data):
    # 确定图像尺寸
    fig, ax = plt.subplots(figsize=(10, 6))
    
    # 计算数据点个数和时间段数
    num_points = len(data)
    num_intervals = len(time)
    
    # 创建网格
    X, Y = np.meshgrid(range(num_intervals), range(num_points))
    
    # 绘制瀑布图
    ax.plot_surface(X, Y, data, cmap='viridis')
    
    # 设置坐标轴标签
    ax.set_xlabel('Time')
    ax.set_ylabel('Data Point')
    ax.set_zlabel('Vibration')
    
    # 设置标题
    ax.set_title('Waterfall Plot')
    
    # 显示图像
    plt.show()

# 示例数据
time = ['00:00', '00:01', '00:02', '00:03', '00:04']
data = [[0.2, 0.4, 0.6, 0.8, 1.0],
        [0.3, 0.5, 0.7, 0.9, 1.1],
        [0.4, 0.6, 0.8, 1.0, 1.2],
        [0.5, 0.7, 0.9, 1.1, 1.3],
        [0.6, 0.8, 1.0, 1.2, 1.4]]

# 转换为numpy数组
data_array = np.array(data)

# 绘制瀑布图
waterfall_plot(time, data_array)
在这个示例代码中,time是字符串时间数据,data是对应的振动数据。我们首先将数据转换为numpy数组,然后使用plot_surface()函数绘制瀑布图。通过设置坐标轴标签和标题,我们可以更好地展示图像。最后,使用plt.show()显示图像。

你可以将自己的字符串时间数据和振动数据传入time和data变量,然后运行代码,即可得到瀑布图的绘制结果,横坐标表示时间,纵坐标表示数据点,颜色或高度表示振动幅值。
Logo

鸿蒙生态一站式服务平台。

更多推荐