当前位置:
首页
文章
后端
详情

python怎么操作可视化hdf5文件

HDF5文件是一种特殊的用来存储和组织大量数据的一组文件格式,在大量科学数据的存储和操作中具有极其优异的特性。但是作为数据格式存储的时候是不易阅读和操作的,接下来这篇文章我们来介绍一下python可视化操作hdf5的方法以及hdf5报错如何解决吧。

什么是HDF5文件呢?

对于一些复杂的hdf5文件,通过可视化的方法可以比较容易的了解文件的内部结构,下面介绍基于python的一个hdf5文件的安装使用方法

1 安装vitables工具包

命令 pip install vitables

2 安装完成后在终端中使用命令

vitables 文件名.hdf5

最终实现hdf5文件的可视化,方便直观就像一层层打开文件夹一样

运行效果

python对于HDF5的操作

    import h5py  #导入工具包  
    import numpy as np  
    #HDF5的写入:  
    imgData = np.zeros((30,3,128,256))  
    f = h5py.File('HDF5_FILE.h5','w')   #创建一个h5文件,文件指针是f  
    f['data'] = imgData                 #将数据写入文件的主键data下面  
    f['labels'] = range(100)            #将数据写入文件的主键labels下面  
    f.close()                           #关闭文件  
      
    #HDF5的读取:  
    f = h5py.File('HDF5_FILE.h5','r')   #打开h5文件  
    f.keys()                            #可以查看所有的主键  :在这里是:【data】,[label]
    a = f['data'][:]                    #取出主键为data的所有的键值  
    f.close()  

关于python环境中hdf5报错问题的几种解决办法(亲测)

一、报错内容如下:

Warning! HDF5 library version mismatched error
The HDF5 header files used to compile this application do not match
the version used by the HDF5 library to which this application is linked.
Data corruption or segmentation faults may occur if the application continues.
This can happen when an application was compiled by one version of HDF5 but
linked with a different version of static or shared HDF5 library.
You should recompile the application or check your shared library related
settings such as ‘LD_LIBRARY_PATH'.
You can, at your own risk, disable this warning by setting the environment
variable ‘HDF5_DISABLE_VERSION_CHECK' to a value of ‘1'.
Setting it to 2 or higher will suppress the warning messages totally.
Headers are 1.10.4, library is 1.10.5

二、几种解决办法

首先,这个问题是有可能是hdf5库不匹配的问题,也有可能是一个类似warning的东西,下面我会详细的说一下。

第一种解决办法:

卸载hdf5,然后重新安装。

终端执行的代码如下:

conda uninstall hdf5
conda install hdf5

网上有好多朋友用这个方法有用, 本人亲测:方法对我无用。

第二种解决办法:

检查一下设置的路径:LD_LIBRARY_PATH

本人亲测:由于我使用的系统是win10,但是LD_LIBRARY_PATH这个路径我找了 好半天也找不到,后来搜索一下发现时Linux的,所以这个方法我没有使用。

第三种解决办法:

将HDF5_DISABLE_VERSION_CHECK设置为更高等级,忽略警告。

在import tensorflow之前,在代码中添加如下代码:

import os;
os.environ[‘HDF5_DISABLE_VERSION_CHECK'] = ‘2'

本人亲测:此方法着实有用!

以上就是python可视化操作hdf5的方法以及hdf5报错如何解决的全部内容,希望能给大家一个参考,也希望大家多多支持W3Cschool。


免责申明:本站发布的内容(图片、视频和文字)以转载和分享为主,文章观点不代表本站立场,如涉及侵权请联系站长邮箱:xbc-online@qq.com进行反馈,一经查实,将立刻删除涉嫌侵权内容。

同类热门文章

深入了解C++中的new操作符:使用具体实例学习

C++中的new操作符是动态分配内存的主要手段之一。在程序运行时,我们可能需要动态地创建和销毁对象,而new就是为此提供了便利。但是,使用new也常常会引发一些问题,如内存泄漏、空指针等等。因此,本文将通过具体的示例,深入介绍C++中的new操作符,帮助读者更好地掌握其使用。


深入了解C++中的new操作符:使用具体实例学习

怎么用Java反射获取包下所有类? 详细代码实例操作

Java的反射机制就是在运行状态下,对于任何一个类,它能知道这个类的所有属性和方法;对于任何一个对象,都能调用这个对象的任意一个方法。本篇文章将通过具体的代码示例,展示如何通过Java反射来获取包下的所有类。


怎么用Java反射获取包下所有类? 详细代码实例操作

了解Java中的volati关键字的作用 以及具体使用方法

本篇文章将和大家分享一下Java当中的volatile关键字,下面将为各位小伙伴讲述volatile关键字的作用以及它的具体使用方法。


了解Java中的volati关键字的作用 以及具体使用方法

Java Map 所有的值转为String类型

可以使用 Java 8 中的 Map.replaceAll() 方法将所有的值转为 String 类型: 上面的代码会将 map 中所有的值都转为 String 类型。 HashMap 是 Java

Java Map 所有的值转为String类型

员工线上学习考试系统

有点播,直播,在线支付,三级分销等功能,可以对学员学习情况的监督监控,有源码,可二次开发。支持外网和局域网私有化部署,经过测试源码完整可用!1、视频点播:视频播放,图文资料,课件下载,章节试学,限时免

员工线上学习考试系统