读取tensorboard的event数据图表再用plot绘制保存

from tensorboard.backend.event_processing import event_accumulator
import matplotlib.pyplot as plt
 
def read_tensorboard_data(tensorboard_path, val_name):
    """读取tensorboard数据,
    tensorboard_path是tensorboard数据地址val_name是需要读取的变量名称"""
    ea = event_accumulator.EventAccumulator(tensorboard_path)
    ea.Reload()
    print(ea.scalars.Keys())
    val = ea.scalars.Items(val_name)
    return val
 
def draw_plt(val, val_name):
    """将数据绘制成曲线图,val是数据,val_name是变量名称"""
    plt.figure()
    plt.plot([i.step for i in val], [j.value for j in val], label=val_name)
    """横坐标是step,迭代次数
    纵坐标是变量值"""
    plt.xlabel('step')
    plt.ylabel(val_name)
    plt.show()
 
if __name__ == "__main__":
    tensorboard_path = 'G:\events.out.tfevents.1562917214.omnisky'
    val_name = 'cross_entropy'
    val = read_tensorboard_data(tensorboard_path, val_name)
    draw_plt(val, val_name)

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 MATLAB 中,可以使用 `xlsread()` 函数读取 Excel 文件中的数据,然后将数据存储到变量中。要在 GUI 中读取 Excel 文件中的数据,你可以在 GUI 中添加一个按钮或菜单项,在用户单击按钮或菜单项后执行读取数据的操作。以下是一个简单的示例: 1. 在 GUIDE 中创建 GUI,并添加一个“读取数据”按钮。 2. 在该按钮的回调函数中添加以下代码: ```matlab function pushbutton1_Callback(hObject, eventdata, handles) % 读取 Excel 文件中的数据 [num, txt, raw] = xlsread('data.xlsx'); % 将数据存储到 handles 结构体中 handles.num = num; handles.txt = txt; handles.raw = raw; % 更新 handles 结构体 guidata(hObject, handles); ``` 这里假设 Excel 文件名为 "data.xlsx",并且数据存储在 num、txt 和 raw 变量中。 3. 在 GUI 的 OpeningFcn 函数中初始化 handles 结构体: ```matlab function varargout = mygui_OpeningFcn(hObject, eventdata, handles, varargin) % 初始化 handles 结构体 handles.output = hObject; handles.num = []; handles.txt = {}; handles.raw = {}; % 更新 handles 结构体 guidata(hObject, handles); ``` 4. 在需要访问 Excel 数据的其他回调函数中,可以通过 `handles` 结构体访问 Excel 数据。例如,以下代码将 num 变量中的数据绘制图表: ```matlab function plot_button_Callback(hObject, eventdata, handles) % 绘制 num 变量中的数据 plot(handles.num); ``` 通过这种方式,你可以在 GUI 中读取 Excel 文件中的数据,并将其存储到变量中以供其他回调函数使用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值