精华内容
下载资源
问答
  • matlab时频分析工具箱+安装方法+函数说明.

    千次下载 热门讨论 2014-02-27 15:30:23
    时频分析工具箱中提供了计算各种线性时频表示和双线性时频分布的函数, 本帖主要列出时频分析工具箱函数简介,以号召大家就时频分析应用展开相关讨论。 一、信号产生函数: amexpo1s 单边指数幅值调制信号 amexpo2s...
  • matlab时频分析工具箱+安装方法+函数说明+最新版tftb: 为了兼顾无积分的朋友,如果无法下载请加公众号:mushiwords ,回复:matlab直接获取永久下载链接
  • heapdump分析工具HeapAnalyzer

    热门讨论 2014-02-10 10:38:56
    heapdump分析工具------HeapAnalyzer: 2014年1月最新发布 用法: 在命令行执行 java -Xmx500m -jar ha453.jar
  • ROST 情感分析工具

    热门讨论 2011-12-02 18:41:19
    文本情感分析工具,可以用于微博内容情感分析,也可以用于微博舆论监控 --转自武大沈阳博客
  • 推荐几个代码静态分析工具

    千次阅读 2021-04-26 00:24:44
    关注+星标公众号,不错过精彩内容作者 | strongerHuang微信公众号|嵌入式专栏大家平时写代码,有用代码静态分析工具进行分析吗?可能很多人都没有对代码进行过静态分析,今天就来...

    关注+星标公众,不错过精彩内容

    作者 | strongerHuang

    微信公众号 | 嵌入式专栏

    大家平时写代码,有用代码静态分析工具进行分析吗?

    可能很多人都没有对代码进行过静态分析,今天就来给大家推荐几个代码静态分析工具。

    嵌入式专栏

    0

    关于代码静态分析工具

    代码静态分析工具,顾名思义就是对代码进行静待分析,以提前预判(分析出)代码潜在的一些问题的工具。

    换句话说,就是通过工具找出你代码的bug(错误、警告)。

    代码静态分析工具需要你的代码遵循一定规范,比如遵循C99MISRA C:2012等,不然工具不支持对你代码的静态分析。

    代码静态分析工具有独立存在的(就是一款软件工具),也有集成在IDE中的。比如比如:IAR EWARM就自带静待分析工具。

    同时,有些工具支持通过“安装插件”的形式集成在IDE中,比如:在keil MDK中添加PC-lint代码静态分析工具

    下面给大家介绍几个款代码静待分析工具:

    嵌入式专栏

    1

    LDRA

    1.网址

    https://www.ldra.com/

    2.介绍

    LDRA是拥有40多年经验的领先公司,LDRA主要针对代码安全和业务关键市场的代码分析和软件测试自动化的软件市场,以实现代码的早期错误识别并消除bug。

    同时,LDRA完全符合行业标准,通过静态和动态分析跟踪要求,以对各种硬件和软件平台进行单元测试和验证。LDRA的业务遍及全球,在英国,美国,德国和印度设有总部,并拥有广泛的分销商网络。

    LDRA符合 ISO 9001:2008。LDRA工具套件已通过TÜVSÜD 和SGS-TÜVSAAR 认证。这些工具符合IEC 61508,IEC 62304,IEC 60880,EN 50128和ISO 26262的规定,可用于与安全相关的软件开发。

    应用领域:

    3.特点

    • 自动化单元测试和系统级测试

    • 自动生成软件认证和批准证据

    • 规划和执行基于需求的测试

    • 对直至目标级别的所有代码执行和报告覆盖率分析

    • 几乎可以在任何主机或目标平台上进行单元测试和系统级测试

    • 符合编码标准(行业和用户定义)

    4.试用

    LDRA工具套件支持30天免费试用。

    嵌入式专栏

    2

    Parasoft C / C ++ test

    1.网址

    https://www.parasoftchina.com/products/ctest/

    2.介绍

    Parasoft® C/C++test® 是专业针对C和C++语言的开发测试方案,经广泛证明能提高软件开发效率和代码质量的自动化最佳实践解决方案。

    Parasoft 公司成立于1987年,总部位于加利福尼亚州的洛杉矶。有着30多年的丰富的专业技术积累和行业应用经验,产品横跨单元测试、静态分析、动态分析、功能测试、压力测试、信息安全测试、通信协议仿真、应用环境虚拟化等。

    3.特点

    • 提升C/C++开发软件质量

    • 自动化测试平台

    • 遵从性认证标准

    • 嵌入式和跨平台开发

    • 提升开发效率,加速软件交付

    • 低成本学习,高度可定制化

    4.支持广泛平台

    支持主机平台:

    • Windows

    • Visual Studio

    • Solaris UltraSPARC

    支持IDE:

    • Eclipse IDE for Developers

    • Microsoft Visual Studio

    • Wind River Workbench

    • ARM Workbench IDE for RVDS

    • ARM Development Studio

    • QNX Momentics IDE (QNX Software Development Platform)

    • Texas Instruments Code Composer Studio

    • ARM ADS

    • Green Hills MULTI

    • IAR Embedded Workbench

    • Keil µVision IDE

    • Keil RealView

    • Microsoft eMbedded Visual C++

    • Microsoft Visual Studio

    • Texas Instruments Code Composer

    • Wind River Tornado

    还有更多:

    4.试用

    Parasoft C/C++test工具套件同样支持免费试用,可进入官网申请免费试用。

    嵌入式专栏

    3

    PVS-Studio

    1.网址

    https://pvs-studio.com/en/pvs-studio/

    2.介绍

    PVS-Studio是用于检测用C,C ++,C#和Java编写的程序源代码中的错误和安全漏洞的工具。它可以在Windows,Linux和macOS环境中的64位系统下运行,并且可以分析用于32位,64位和嵌入式ARM平台的源代码。

    PVS-Studio执行静态代码分析并生成报告,以帮助程序员查找和修复错误。PVS-Studio执行各种代码检查,对于发现打印错误和复制粘贴错误也很有用。比如:V501,V517,V522,V523,V3001等类似错误信息。

    3.特点

    备注:截图内容为自动翻译,可能存在一些翻译错误。

    4.支持广泛平台

    操作系统:

    • Windows

    • Linux

    • macOS

    使用C/C++编译器对应教程的地址:

    https://pvs-studio.com/en/m/0033/

    5.试用

    PVS-Studio工具套件同样为商业付费软件,但支持免费试用。

    嵌入式专栏

    4

    VectorCAST

    1.网址

    https://www.vector.com/de/en/products/products-a-z/software/vectorcast/

    2.介绍

    VectorCAST嵌入式软件测试平台是一系列产品,可在整个软件开发生命周期内自动执行分析和测试。

    VectorCAST工具系列支持测试用例的创建和管理,以验证底层软件。此外,VectorCAST工具支持在DO-178C和ED-12C规定的所有级别(包括A级)上捕获和报告结构代码覆盖率数据。

    应用于:航天航空、汽车、工业、医疗、轨道交通等领域。

    软件关键级别和结构覆盖要求:

    3.特点

    • 支持DO-178C要求的所有级别的代码覆盖范围;ED-12C

    • 自动生成和编译完整的测试存根和驱动程序

    • 自动回归测试

    • 符合标准的测试报告生成

    • 在主机,模拟器和嵌入式目标系统上测试执行

    4.试用

    VectorCAST工具套件同样为商业付费软件,但支持免费试用。

    最后,篇幅有限,先推荐这些,还有更多静态分析工具,后期为大家分享。

    ------------ END ------------

    后台回复『软件工具』『嵌入式软件设计与开发』阅读更多相关文章。

    欢迎关注我的公众号回复“加群”按规则加入技术交流群,回复“1024”查看更多内容。

    欢迎关注我的视频号:

    点击“阅读原文”查看更多分享,欢迎点分享、收藏、点赞、在看。

    展开全文
  • javacore分析工具

    热门讨论 2014-02-10 10:23:30
    IBM Thread and Monitor Dump Analyzer for Java 2014年1月最新发布 可以分析weblogic或was当机生成的javacore和dump文件 使用方法在命令行输入 java -Xmx500m -jar jca452.jar
  • 开源MPEG2-TS格式分析工具

    热门讨论 2014-01-14 00:01:58
    自己做的MPEG2-TS分析工具。支持中英双语。 本着开源的原则,包含了源代码。工程使用VC2010和MFC开发完成。
  • HEVC 码流分析工具 (Elecard出品)

    千次下载 热门讨论 2013-10-09 13:18:35
    HEVC的码流分析,功能极为强大,而且是免费的,学习HEVC必备。
  • H265编码分析工具(Elecard.HEVC.Analyzer)

    热门讨论 2015-05-27 10:19:49
    很好的H265编码分析工具,售价1300美金,做过H264分析的应该都知道Elecard,注册版。
  • 本文是一个静态代码分析工具的清单,共有30个工具。包括4个.NET工具、2个Ada工具、7个C++工具、4个Java工具、2个JavaScript工具、1个Opa工具、2个Packaging工具、3个Perl工具、1个Python工具、1个嵌入式工具、2个二...

         

         本文是一个静态代码分析工具的清单,共有30个工具。包括4个.NET工具、2个Ada工具、7个C++工具、4个Java工具、2个JavaScript工具、1个Opa工具、2个Packaging工具、3个Perl工具、1个Python工具、1个嵌入式工具、2个二进制工具、1个静态分析工具


    Fortify SCA


           Fortify SCA 是一个静态的、白盒的软件源代码安全测试工具。它通过内置的五大主要分析引擎:数据流、语义、结构、控制流、配置流等对应用软件的源代码进行静态的分析,分析的过程中与它特有的软件安全漏洞规则集进行全面地匹配、查找,从而将源代码中存在的安全漏洞扫描出来,并给予整理报告。扫描的结果中不但包括详细的安全漏洞的信息,还会有相关的安全知识的说明,以及修复意见的提供

        

             官网:https://fortify.com/


    • Coverity源代码缺陷检测工具
    •        Coverity能够准确识别出研发工作流中的严重质量缺陷,并且提供可行的修正建议来降低软件错误和安全漏洞的修复成本、时间和风险。Coverity可使用高级源码分析技术在非常复杂的C、C++、Java、Objective-C、Javascript及C#码库中发现最严重的质量缺陷和安全漏洞, Coverity是第一个能够快速、准确分析当今的大规模(几百万、甚至几千万行的代码)、高复杂度代码的工具,Coverity解决了影响源代码分析有效性的很多关键问题:构建集成、编译兼容性、高误报率、有效的错误根源分析等。

         

       官网:https://coverity.com

      ProteCode二级制代码扫描工具

        ProteCode可对应用程序和固件进行扫描,并列出所含代码和库文件相关的软件许可及对应的已知漏洞。ProteCode不仅能揭示开源的和私有的第三方代码和库文件,还能够枚举出对应的CVE(Common Vulnerabilities and Exposures)标识符以及相关的软件许可证。将编译好的二进制文件上传(不需要源代码),仅需花费几分钟时间就可以揭示出你所需要的软件内部运行的信息。解决方案有助于研发团队安全无误地使用和管控第三方代码。在开发和测试流程或法律合规部门管理由于使用第三方代码所产生的风险,其中包括开源、内部开发、外包和商业代码。


      Hex-Rays二进制分析工具

      ­­ 荷兰Hex-Rays公司的二进制分析工具能够将二进制代码转换成分析员们容易可以读取和修改的文本,帮助分析员分析和验证的程序,更快捷的判断软件的有用性和可用性,定位安全问题。


      .NET

      .NET Compiler Platform(代号 Roslyn)

      Roslyn提供有着丰富的代码分析API的开源C#和Visual Basic编译器。它可以使用这些Visual Studio里的API生成代码分析工具。

            官网:https://roslyn.codeplex.com/

      CodeIt.Right

      CodeIt.Right提供一个快速的自动的方法确保你的源代码遵循预先定义的设计和风格准则。它通过以下方式使静态代码分析进入更高水平:即时代码审查、及早发现问题、编码原则、自动代码审查、集成StyleCop检查、报告。


      FxCop

      一个实现.NET静态代码分析的图形用户接口和命令行工具。

      FxCop提供几百种规则实现各种类型的分析。包括:设计、全球化、互操作性、可维护性、灵活性、命名、性能、可移植性、可靠性、安全性,利用率。FxCop的功能完全集成到Visual Studio2010的高级版和最终版中。


      StyleCop

      StyleCop分析C#源代码,强制执行一系列风格和一致性规则。可以在Visual Studio内部运行,也可以集成到MSBuild项目中。StyleCop还可以被集成到很多第三方开发工具中。

      核心原则:

      StyleCop通过为C#代码强制执行一组通用风格规则来体现价值。StyleCop将继续利用一个连续的带有允许的最小规则配置的规则集。开发者可以实现他们自己的规则,只要他们愿意。

      StyleCop拥有和Visual Studio、MSBuild,TFS等无缝集成的能力。开发者可以自由执行自定义代码,将StyleCop集成到其他开发和工具环境,如SDK文档中所述。


       Ada

      AdaControl

      AdaControl是一个免费的(授权)工具,可以检测Ada程序中使用的各种结构。它的首要目标是控制风格和程序规则的正确使用,但是它也可以作为一个强大的工具搜索编程风格或设计模式的各种形式。搜索的元素范围有非常简单的,比如某种实体、声明或语句的出现,也有非常复杂的,比如验证遵守了某种编程模式。


      Fluctuat

      Fluctuat是一抽象解释器,以数字编程(C或Ada)静态分析器为基础,由CEA-LIST的ME ASI(ModElling and Analysis of Systems in Interaction)实验室在2001年开发。给出一组输入和参数,可能带有不确定因素,它会考虑这个程序所有可能的行为,无论是真实的还是有限精度下,并描述这些不同的特性。


       C,C++

      BLAST

      BLAST(Berkeley Lazy Abstraction Software verification Tool伯克利惰性抽象软件验证工具)是一个C语言静态软件验证工具,它可以解决可达性问题,例如是否可以通过一个有效的执行命令从入口点(主程序)到达给定的程序位置。

      安全属性的验证可能降低到可达性,BLAST常常用于核查Linux驱动程序验证项目。

      可以在以下网站下载Linux系统的BLAST源代码或二进制版本。


      Cpplint

      这个项目继续开发cpplint,它是一个C++风格检查器,遵循Google的C++风格指南。提供的cpplint 为PYPI(Python Package Index)包,并添加了几个功能和修复程序。它是google/styleguide的一个分支,希望未来可以合并在一起。


      Coccinelle

      Coccinelle是一个程序匹配和转换引擎。它提供语意修补程序以便在C代码中指定期望的匹配和转换。Coccinelle初始的目的是完成Linux的间接开发。这种开发包括客户端代码中所需要的改变,目的是响应库应用程序接口变化。还可能包括一些修改,例如重命名一个函数、添加一个函数参数,它的值以某种方式被上下文决定、重组数据结构。除了间接开发,Coccinelle还可以成功的寻找和修复系统代码中的错误。


      Frama-C

      Frama-C是一个平台,致力于分析用C语言写的源代码。

      Frama-C集成几个分析技术到一个协作平台中。其包含一组提供核心功能的内核(例如一个C程序的抽象化语法树)和一组被称为插件的分析器。这些插件可以建立在平台中其他插件的计算结果之上。

      归功于这个方法,Frama-C能提供一些复杂的工具,包括:

      • 一个基于抽象解释器的分析器,旨在验证不存在运行时错误;
      • 一个基于最弱前提运算的程序防护框架;
      • 一个程序切片器;
      • 一个验证临时特性的工具;
      • 几个代码开发和相关性分析的工具。

      这些插件共享常见的语言,可以通过ASCL(ANSI/ISO C Specification Language)特性交换信息,还可以通过它们的APIs集合信息。


      Lint

      Lint实用程序尝试检测命名为C程序文件的功能,可能是错误,也可能是不可移植,或者是浪费。同时它也执行比C编译器更严格的类型检查。Lint实用程序运行C预处理器作为它的第一阶段,带有这个预处理器的标志“lint”,其被定义为允许某些有问题的代码被lint更改或跳过。因此,对于所有被lint检查的代码来说这个标志应该被认为是一个预留字。


      Sparse

      Sparse是一个源文件智能语法分析器:它不是编译器(虽然它可以作为一个前端编译器使用),也不是预处理器(虽然它包含部分预处理语句)。

      这意味着它是一个小而简单的库。内容太少是它容易使用的部分原因。它只有一个任务,就是为任意用户创造语法分析树从而进行进一步的分析。它不是分词器,也不是那些通用的上下文无关的语法分析器。事实上,上下文(语意)就是我想说的不仅解决分组标记,而且还有_type_在组中的含义。

      语法分析完成以下5个阶段:完整文件标记化、预处理(可以导致另一个文件进入标记阶段)、语法分析、延长性评估、内联函数扩展和简化树。


      Splint

      Splint是一个辅助注释轻量级静态检查工具,检查C程序的安全漏洞和代码错误。作为一个更好的lint,使用Splint毫不费力。如果投入额外的工作添加注释到程序中,Splint可以执行比任何标准lint能完成的更强的检查。

       Java

      Checkstyle

      Checkstyle是一个开发工具,可以帮助程序员编写Java代码,并使其遵守编码标准。它自动执行检查Java代码的过程,使人们从这种无聊但是重要的任务中解放出来。对于那些想要执行代码标准的项目,这是非常理想的。

      Checkstyle是高配置的,几乎可以支持任何代码标准。


      FindBugs

      FindBugs是一个使用静态分析寻找Java代码中错误的程序。


      KeY

      传统的说,Key过去是一个Java程序验证工具。虽然现在这仍然是它的主要应用之一,但是这些年来它已经成长为一个拥有各种领域应用的程序验证平台。当前最重要的应用是:

      • 程序验证(独立的图形用户界面、Eclipse集成、KeYHoare)
      • 调试(符号执行调试器)
      • 信息流分析(安全)
      • 测试用例产生(KeYTestGen)

      我们一直致力于让Key框架更容易被其他程序访问。例如,在另一个工具的后台可以很容易的将Key当成一个符号执行引擎使用。正在进行的工作示例有Java编译器的建造,是一个基于Key创建的符号执行树。


      Soot

      最初,Soot开始于一个Java优化框架,到目前为止,来自世界各地的研究人员和从业人员使用Soot分析、装备、优化和可视化Java和Android应用。它提供四种中间格式分析和转化Java字节码:

      • Baf:一个字节码的简化格式,操作简单。
      • Jimple:一个适合优化的3-地址类型中间格式。
      • Shimple:Jimple的一个SSA变化格式。
      • Grimp:一个适合反编译和代码检查的Jimple合集版本。


       JavaScript

      JSHint

      JSHint是一个社区驱动工具,它检测JavaScript代码中的错误和潜在问题。例如语法错误,隐性类型转换错误,变量泄漏等等。值得注意的是,静态代码分析可以定位许多不同类型的错误,但是它不能检测出你的程序是不是正确、快速或者有没有内存泄漏。应该结合像JSHint这样的工具和单元功能测试一起审查代码。

      JSHint非常灵活,使用者可以轻松的在期望的代码执行环境中调整它。


      JSLint

      JSLint本身是一个JavaScript程序,它可以寻找Javascript程序中的错误,是一个代码质量工具。

      JSLint扫描JavaScript源文件,寻找错误,并返回描述问题的信息和其在程序中的大概位置。这些问题不一定是语法错误,虽然经常是这样。JSLint还查看一些风格习惯和结构问题。它不能证明你的代码是正确的,只是提供另一双眼睛去帮助发现问题。

      JSLint定义了一个专业的JavaScript子集,一个比ECMAScrip程序语言标准(管理JavaScript的文件)更严格的语言。它会驳回大多数合法程序,是一个更高的标准。


      6 Opa

      Opa是一个用于网站开发的函数程序设计语言,编译为JavaScript。Opa包括两部分:第一,是一个来自Opa语言的编译器,功能类似JavaScript的语法但是有很多增强功能。第二,是一个JavaScript库,在运行时使用。

      Opa包括它自己的静态分析器。作为一种以网站应用开发为目的的语言,强大的静态类型编译器检查高级网站数据类型的有效性,默认阻止许多漏洞,比如XSS攻击和数据库代码注入。


      7 Packaging

      Lintian

      Lintian是一个静态分析工具,用于寻找Debian基础包中的错误、违反规则和其他的问题。它可以处理二进制Debian包(.deb)、微型/安装程序包(.udeb)、Debian源程序包(.dsc)和(有限程度的)变更文件。


      Rpmlint

      Rpmlint是一个检查Rpm包中常见错误的工具。经常被用在上传之前测试单个软件包和指定文件或者检查整个分布。默认情况下执行所有可用的检查,但是专项检查可以使用命令行参数实现。

      被检查的文件可以是一个Rpm软件包文件、一个指定文件或一个目录。如果是目录,递归搜索Rpm和指定文件进行检查。特殊值是指在标准输入中被读取的结果被当作单个指定文件内容处理。


      Perl

      Perl::Critic

      Perl::Critic是一个可扩展的框架,对Perl源代码创建和应用编码标准。本质上,它是一个静态源代码分析引擎。Perl::Critic分布着大量的Perl::Critic::Policy模块,它们试图执行各种编码规则。大多数规则模块以Damian Conway的书《Perl Best Practices》为基础。然而Perl::Critic不限于PBP这本书,甚至支持与Conway相矛盾的规则。你可以通过Perl::Critic接口启用、禁用和自定义这些规则。你也可以创造适合自己的新规则模块。


      PerlTidy

      Perltidy是一个Perl脚本,它缩进和重新格式化Perl脚本,使它们更容易阅读。如果你编写或者花很多时间读Perl脚本,你可能觉得它是有帮助的。

      格式化可以使用命令行参数控制。

      Perltidy可以输出置标语言和源代码。

      除了重新格式化脚本,Perltidy可以很好的帮助追踪下面这些错误,缺少或多余的括号、参数和方括号,因为它非常擅长定位错误。


      Padre

      Padre是一个Perl集成开发环境,或换句话说是一个新手Perl程序员易于使用的文本编辑器,但是同时支持大型多语言和多技术项目。

      我们的主要目的是创造一个无语伦比的环境来学习Perl,创建Perl脚本、模块和分布,提供一个可扩展的插件系统以支持添加相关功能和语言,同时支持高级开发者在任何地方使用这个编辑器。

      它也提供静态代码分析来检查常见的初级错误。


      Python

      Pylint

      Pylint是一个Python源代码分析器,它可以查找编程错误,帮助推行编码标准并嗅探代码异味(在Martin Fowler的重构书中定义)。

      Pylint有许多默认启用的规则,因为方法太多所以不能把它们全部压制在一个最小程序中。它是高度可配置的,处理程序可以在代码中控制它。另外,还可以写一些插件添加自己的检查。


    展开全文
  • Python常用数据分析工具

    千次阅读 2019-04-17 16:09:37
    Python数据分析工具 Python 本身的数据分析功能不强,需要安装一些第三方扩展库来增强它的能力。常用 的库有Numpy 、Scipy 、Matplotlib 、Pandas 、Scikit-Learn 、Keras 和Gensim 等,下面将对 这些库的安装和...

    Python数据分析工具

    • Python 本身的数据分析功能不强,需要安装一些第三方扩展库来增强它的能力。常用
      的库有Numpy 、Scipy 、Matplotlib 、Pandas 、Scikit-Learn 、Keras 和Gensim 等,下面将对
      这些库的安装和使用进行简单的介绍。
    • 如果你安装的是Anaconda 发行版,那么它已经自带了以下库: Numpy 、Scipy 、Matplotlib
      、Pandas 和Scikit-Leam。

    在这里插入图片描述

    1 .Numpy

    • Python 并没有提供数组功能。虽然列表可以完成基本的数组功能,但它不是真正的数
      组,而且在数据量较大时,使用列表的速度就会慢得让人难以接受。为此, Numpy 提供了真
      正的数组功能,以及对数据进行快速处理的函数。Numpy 还是很多更高级的扩展库的依赖
      库,Scipy 、Matplotlib 、Pandas 等库都依赖于它。值得强调的是, Numpy 内
      置函数处理数据的速度是C 语言级别的,因此在编写程序的时候,应当尽量使用它们内置的
      函数,避免出现效率瓶颈的现象(尤其是涉及循环的问题) 。

    2. Scipy

    • 如果说Numpy 让Python 有了Matlab 的味道,那么Scipy 就让Python 真正地成为了半个
      Matlab 了。Numpy 提供了多维数组功能,但它只是一般的数组,并不是矩阵。例如,当两个
      数组相乘时,只是对应元素相乘,而不是矩阵乘法。Scipy 提供了真正的矩阵,以及大械基
      于矩阵运算的对象与函数。
    • Scipy 包含的功能有最优化、线性代数、积分、插值、拟合、特殊函数、快速傅里叶变
      换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算,显然,这些功
      能都是挖掘与建模必备的。
    • Scipy 依赖于Numpy, 因此安装它之前得先安装Numpy 。

    3 . Matplotlib

    • 不论是数据挖掘还是数学建模,都免不了数据可视化的问题。对于Python 来说,Matplotlib 是最著名的绘图库,它主要用于二维绘图,当然它也可以进行简单的三维绘图。它不但提供了一整套和Matlab 相似但更为丰富的命令,让我们可以非常快捷地用Python 可视化数据,而且允许输出达到出版质量的多种图像格式。

    4. Pandas

    • python数据分析主力工具Pandas 。Pandas 是Python 下最强大的数据分析和探索
      工具(貌似没有之一) 。它包含高级的数据结构和精巧的工具,使得在Python 中处理数据非
      常快速和简单。Pandas 构建在NumPy 之上,它使得以NurnPy 为中心的应用很容易使用。
    • Pandas 的名称来自于面板数据( Panel Data) 和Python 数据分析( Data Analysis), 它最初被作
      为金融数据分析工具而开发出来,由AQR Capital Management 公司千2008 年4 月开发出来,
      并于2009 年底开源。
    • Pandas 的功能非常强大,支持类似于SQL 的数据增、删、查、改,并且带有丰富的数
      据处理函数;支持时间序列分析功能;支持灵活处理缺失数据等。事实上,单纯Pandas 工
      具就足以写一本书,读者可以阅读Pandas 的主要作者之一Wes McKinney 写的《利用Python
      进行数据分析》一书,学习更详细的内容。
    • Pandas 基本的数据结构是Series 和DataFrame 。顾名思义, Series 就是序列,类似一维数组; DataFrame 则是相当于一张二维的表格,类似二维数组,它的每一列都是一个Series 。
      为了定位Series 中的元索, Pandas 提供了Index 对象,每个Series 都会带有一个对应的
      Index, 用来标记不同的元素, Index 的内容不一定是数字,也可以是字母、中文等,它类似
      千SQL 中的主键。
      类似地, DataFrame 相当于多个带有同样Index 的Series 的组合(本质是Series 的容器),
      每个Seiries 都带有唯一的表头,用来标识不同的Series 。

    5. StatsModels

    • Pandas 着眼于数据的读取、处理和探索,而StatsModels 则更加注重数据的统计建模分
      析,它使得Python 有了R 语言的味道。StatsModels 支持与Pandas 进行数据交互,因此,它
      与Pandas 结合,成为了Python 下强大的数据挖掘组合。

    • StatModel 依赖于Pandas (当然也依赖于Pandas 所依赖的),同时还依赖于
      pasty (一个描述统计的库) 。

    6. Scikit-Learn

    • 从该库的名字可以看出,这是一个机器学习相关的库。不错, Scikit-Learn 是Python 下
      强大的机器学习工具包,它提供了完善的机器学习工具箱,包括数据预处理、分类、回归、
      聚类、预测和模型分析等。
    • Scikit-Learn 依赖于NumPy 、SciPy 和Matplotlib, 因此,只需要提前安装好这几个库,
      然后安装Scik止Learn 就基本上没有什么问题了。

    7. Keras

    • 虽然Scikit-Leam 足够强大,但是它并没有包含一种强大的模型一人工神经网络。人
      工神经网络是功能相当强大的、但是原理又相当简单的模型,在语言处理、图像识别等领域
      有着重要的作用。近年来逐渐火起来的“深度学习“算法,本质上也就是一种神经网络,可
      见在Python 中实现神经网络是非常必要的。
    • 事实上, Keras 并非简单的神经网络库,而是一个基
      于Theano 的强大的深度学习库,利用它不仅仅可以搭建普通的神经网络,还可以搭建各种
      深度学习模型,如自编码器、循环神经网络、递归神经网络、卷积神经网络等。由千它是基
      于Theano 的,因此速度也相当快。
    • 有必要介绍一下Theano, 它也是Python 的一个库,它是由深度学习专家Yoshua Bengio
      带领的实验室开发出来的,用来定义、优化和高效地解决多维数组数据对应数学表达式的模
      拟估计问题。它具有高效地实现符号分解、高度优化的速度和稳定性等特点, 最重要的是它
      还实现了GPU 加速,使得密集型数据的处理速度是CPU 的数十倍。
    • 用Theano 就可以搭建起高效的神经网络模型,但是对于普通读者来说门槛还是相当高
      的, Keras 正是为此而生,它大大简化了搭建各种神经网络模型的步骤, 允许普通用户轻松
      地搭建并求解具有几百个输入节点的深层神经网络, 而且定制的自由度非常大, 甚至可能惊
      呼:搭建神经网络可以如此简单!

    8. Gensim

    • 在Gensim 的官网中,它对自己的简介只有一句话: topic modelling for humans!
      Gensim 是用来处理语言方面的任务,如文本相似度计算、LOA 、Word2Vec 等,这些领
      域的任务往往需要比较多的背景知识,通常的情况是:研究这方面的读者,已经不需要我再
      多说什么;不研究这方面的读者,在这里也说不清楚。(所以Gensim 的介绍只有一句话也就
      不奇怪了。)
    • 需要一提的是, Gensim把Google 公司在2013 年开源的著名的词向量构造工具Word2Vec
      编译好了作为它的子库,因此需要用到Word2Vec 的读者也可以直接用Gensim 而无需自行
      编译了。据说Gensim 的作者对Word2Vec 的代码进行了优化,据说它在Gensim 下的表现
      比原生的Word2Vec 还要快。(为了实现加速,需要准备C++ 编译器环境,因此,建议用到
      Gensim 的Word2Vec 的读者在Linux 下环境运行。)
    展开全文
  • arcgis空间分析工具集阐释

    万次阅读 多人点赞 2019-06-25 21:36:30
    密度分析 密度分析是根据输入要素数据计算整个区域的数据聚集状况。 密度分析是通过离散点数据或者线数据进行内插的过程,根据插值原理不同,主要是分为核密度分析和普通的点\线密度分析。核密度分心中,落入搜索...

    密度分析

    密度分析是根据输入要素数据计算整个区域的数据聚集状况。

    密度分析是通过离散点数据或者线数据进行内插的过程,根据插值原理不同,主要是分为核密度分析和普通的点\线密度分析。核密度分心中,落入搜索区的点具有不同的权重,靠近搜索中心的点或线会被赋予较大的权重,反之,权重较小,它的计算结果分布较平滑。在普通的点\线密度分析中,落在搜索区域内的点或线有相同的权重,先对其求和,再除以搜索区域的大小,从而得到每个点的密度值。

    ArcGIS 的空间分析工具箱中提供了密度分析工具集中的三个工具:

    1.  Kernel Density(核密度分析)

    输入值可以是点或者线。

    工作原理引自帮助:

    概念上,每个点/线上方均覆盖着一个平滑曲面。在点/线所在位置处表面值最高,随着与点的距离的增大表面值逐渐减小,在与点/线的距离等于搜索半径的位置处表面值为零。仅允许使用圆形邻域。曲面与下方的平面所围成的空间的体积等于此点的 Population 字段值,如果将此字段值指定为 NONE 则体积为 1。每个输出栅格像元的密度均为叠加在栅格像元中心的所有核表面的值之和。核函数以 Silverman 的著作(1986 年版,第 76 页,方程 4.5)中描述的二次核函数为基础。

    对于点,如果 population 字段设置使用的是除 NONE 之外的值,则每项的值用于确定点被计数的次数。例如,值 3 会导致点被算作三个点。值可以为整型也可以为浮点型。

    对于线,如果 population 字段使用的是除 NONE 之外的值,则线的长度将由线的实际长度乘以此线的 population 字段的值而得出。
    2.  Point Density / Line Density(点、线密度分析):

    这两个工具的输出与核密度工具的输出的区别在于:

    对于点密度和线密度,需要指定一个邻域,以便计算出各输出像元周围像元的密度。而核密度则可将各点的已知总体数量从点位置开始向四周分散。在核密度中,在各点周围生成表面所依据的二次公式可为表面中心(点位置)赋予最高值,并在搜索半径距离范围内减少到零。对于各输出像元,将计算各分散表面的累计交汇点总数。

    1)点密度分析

    每个栅格像元中心的周围都定义了一个邻域(邻域可以使用圆形、矩形、环形、楔形的形状来定义),将邻域内点的数量相加,然后除以邻域面积,即得到点要素的密度。如果 Population 字段设置使用的是 NONE 之外的值,则每项的值用于确定点被计数的次数。例如,值为 3 的项会导致点被算作三个点。值可以为整型也可以为浮点型。

    2)线密度分析

    使用搜索半径以各个栅格像元中心为圆心绘制一个圆。每条线上落入该圆内的部分的长度与 Population 字段值相乘。对这些数值进行求和,然后将所得的总和除以圆面积。

    上图中显示的是栅格像元与其圆形邻域。线 L1 和 L2 表示各条线上落入圆内部分的长度。相应的 population 字段值分别为 V1 和 V2。因此:

    Density = ((L1 * V1) + (L2 * V2)) / (area_of_circle)

    如果 population 字段使用的是除 NONE 之外的值,则线的长度将等于线的实际长度乘以其 population 字段的值。
     

    距离分析

    距离分析相关的工具:

    ArcGIS中,主要可以通过如下的几种方式进行距离分析:

    1) 欧氏距离分析

    2) 成本加权距离分析

    3) 用于垂直移动限制和水平移动限制的成本加权距离分析

    4) 获取最短路径

    使用ArcGIS空间分析扩展实现距离分析,最主要的是欧氏距离分析和成本加权距离分析两类工具。

    一、欧氏距离工具

    欧氏距离工具测量每个像元距离最近源的直线距离(像元中心至像元中心的距离)。

    欧氏距离(Euclidean Diatance)——  求得每个像元至最近源的距离。

    欧氏方向(Euclidean Direction)——  求得每个像元至最近源的方向。

    欧氏分配(Euclidean Allocation)——  求得每个像元的最近的源。

    TIPS:

    1.  源(Source)

    可以是感兴趣的地物的位置,数据方面,既可以是栅格数据,也可以是矢量数据。但注意:如果数据选用了栅格数据,数据中必须仅包含表示源的像元,其他像元需要是Nodata。如果选用矢量,在执行工具之时,内部会将其先转成栅格。

    2.  欧氏距离的算法

    简单理解为:工具会求得每个像元至每个源的距离,然后取得每个像元至每个源的最短距离以输出。其中,欧氏距离是像元中心与源像元的中心的直线距离。

    如果像元与两个或更多源之间的距离相等,则计算都基于像元扫描过程中遇到的第一个源。无法控制该扫描过程。

    帮助中有这样的描述:工具在实际执行的过程中,进行两次顺序扫描。这样,工具的执行速度与源像元的数目、分布以及最大距离无关。影响工具执行速度的唯一因素是栅格的大小。计算时间与“分析”窗口中的像元数成线性比例。暂且不知道进行了什么样的两次顺序扫描。

    3. 欧氏距离输出栅格结果

    投影平面上,像元与最近源之间的最短直线距离。如下图:

    4. 欧氏方向输出栅格结果

    像元与最近源之间的方位角方向(以度为单位)。使用 360 度圆,刻度 360 指北,90指东,从刻度 1 顺时针增加。值 0 供源像元使用。如下图:

    5. 欧氏分配输出栅格结果

    输出的每个像元都是距其最近源的值。如下图:

    二、成本加权距离工具

    成本加权距离工具可以看成是对欧氏直线距离的进一步修改,将经过某个像元的距离赋以成本因素。举个简单的例子,翻过一座山到达目的地是最短的直线距离,绕行这座山距离较长,但是更节省时间和体力,那就后者的成本加权距离最短了。

    1)成本距离(Cost Distance):求得每个像元至最近源的成本距离。

    2)成本回溯链接(Cost back link):求的一个方向栅格,可以从任意像元沿最小成本路径返回最近源。

    3)成本分配(Cost Allocation):求得每个像元的最近的源。

    4)成本路径(Cost Patch):求的任意像元到最近源的最小成本路径。

    TIPS:

    1.  成本栅格可以是整形或者浮点型,但是其值中不能含有负值或者0。成本栅格中的Nodata视为障碍。

    2. 成本距离输出栅格数据

    这里的简单示例中,下面一层黑白渲染的是成本栅格,颜色深的像元代表成本比较高,反之较低。结果如下:

    2. 成本距离回溯链接

    要注意的是,它并不会求的要返回哪一个源像元以及如何返回。而是记录从任意像元回溯到最近源的路径上,每个像元向下一个像元指向的方向,这个方向以0-8的代码形式记录。如下图:

    3. 成本距离分配

    这个类似于前面的欧氏距离分配,得到的是每个像元至最近源的成本距离。

    三、路径距离工具

    路径距离工具与成本距离相似,也可以确定从某个源到栅格上各像元位置的最小累积行程成本。但是,路径距离不仅可计算成本表面的累积成本,而且会考虑到行驶的实际曲面距离,和影响到移动总成本的水平和垂直因子。主要包含这几个工具

    1)路径距离(Path Distance)

    2)路径回溯链接(Path back link)

    3)路径分配(Path Allocation)

    这些工具生成的累积成本表面可用于扩散模型、流动和最低成本路径分析。

    四、 获得最短路径

    1. 成本距离路径

    任意像元到最近源的最小成本路径,需要引用到上面工具中生成的成本距离和成本回溯链接栅格数据。如下图:

    2. 廊道

    另外要说的是廊道分析工具(Corridor)。此工具用于计算两个成本栅格的累积成本栅格结果,为了求得从一个源到另一个源且经过该像元位置的最小成本路径。

    输出栅格不是单个最小成本路径,但会得到源之间累积成本的范围。

    最后我们可以配合其他工具将小于某一阈值的结果提取出来,例如工具Extract by Attribute提取,或者通过Con进行条件赋值等等方法,获取结果。

    如下如所示:

    学校A、B成本距离分析结果:

    学校C、D、E的成本距离分析结果:

    有此两个距离成本结果,来分析得到A、B到C、D、E之间的廊道,也就是两组源之间的最小累积成本距离。

    然后结果中我们可以按照一定的阈值来提取结果。例如累积成本在75以下的我才能接受:

    常用工具

    空间分析扩展模块中提供了很多方便栅格处理的工具,其中提取(Extraction)、综合(Generalization)等工具集中提供的功能是在分析处理数据中经常会用到的。

    一、提取(Extraction)

    顾名思义,这组工具就是方便我们将栅格数据按照某种条件来筛选提取。

    工具集中提供了如下工具:

    xtract by Attribute:按属性提取,按照SQL表达式筛选像元值。

    Extract by Circle:按圆形提取,定义圆心和半径,按圆形提取栅格。

    Extract by Mask:按掩膜提取,按指定的栅格数据或者矢量数据的形状的提取像元。

    Extract by Point:按点提取,按给定坐标值列表进行提取。

    Extract by Polygon:按多边形提取,按给定坐标序列作为节点的多边形进行提取。

    Extract by Rectangle:按矩形提取,按给定的图层的Extent,或者定义了四至的矩形进行提取。

    Extract Value to Point :按照点要素的位置提取对应的(一个/多个)栅格数据的像元值,其中,提取的Value可以使用像元中心值或者选择进行双线性插值提取。

    Extract Multi Value to Point:同上,只是提取多个栅格的像元值。

    Sample:采样,根据给定的栅格或者矢量数据的位置提取像元值,采样方法可选:最邻近分配法(Nearest)、双线性插值法(Bilinear)、三次卷积插值法(Cubic)。

    以上工具用来提取栅格中的有效值、兴趣区域\点等很有用的。

    二、综合(Generalization)

    这组工具主要用来清理栅格数据,可以大致分为三个方面的功能:更改数据的分辨率、对区域进行概化、对区域边缘进行平滑

    这些工具的输入都要求为整型栅格。

    1. 更改数据分辨率:

    Aggregate: 聚合,生成降低分辨率的栅格。

    其中,Cell Factor需要是一个大于1的整数,表示生成栅格的像元大小是原来的几倍。

    生成新栅格的像元值可选:新的大像元所覆盖的输入像元的总和值、最小值、最大值、平均值、中间值。

    效果如下,Cell factor设置为 6:
      ==>

    2. 对区域进行概化:

    Expand: 扩展,按指定的像元数目扩展指定的栅格区域。

     ==> 

    Shrink: 收缩,按指定像元数目收缩所选区域,方法是用邻域中出现最频繁的像元值替换该区域的值。同Expand。

    Nibble: 用最邻近点的值替换掩膜范围内的栅格像元的值。

    Thin: 细化,通过减少表示要素宽度的像元数来对栅格化的线状对象进行细化。

    Region Group: 区域合并,记录输出中每个像元所属的连接区域的标识。每个区域都将被分配给唯一编号。

    工作原理:扫描的第一个区域接收值 1,第二个区域接收值 2,依此类推,直到所有区域都已赋值。扫描将按从左至右、从上至下的顺序进行。被赋予输出区域的值取决于系统在扫描过程中是在什么时候遇到它们的。

    其中,添加链接选项为“真”时。这将在输出栅格的属性表中创建名为 LINK 的项,其保留输入栅格的每个像元的原始值。

    如下图,原始数据具有相同值的区域有的并不连通,这时会新生成很多Region:

     ==>

    3. 对区域边缘进行平滑:

    Boundary Clean: 边界清理,通过扩展和收缩来平滑区域间的边界。该工具会去更改X或Y方向上所有少于三个像元的位置。

    Majority Filter: 众数滤波,根据相邻像元数据值的众数替换栅格中的像元。可以认为是“少数服从多数”,太突兀的像元被周围的大部队干掉了。其中“大部队”的参数可设置,相邻像元可以4邻域或者8邻域,众数可选,需要大部分(3/4、5/8)还是过半数即可。

    TIPS: 这两个工具仅支持整形栅格输入。

    看如下示例,清理后,还是有明显变化的,细碎像元已经被处理掉了。

         

    表面分析

    坡向(Aspect):获得栅格表面的坡向。求得每个像元到其相邻像元方向像元值的变化率最大的下坡方向。

    等值线(Contour):根据栅格表面创建等值线(等值线图)的线要素类。

    等值线序列(Contour List):根据栅格表面创建所选等值线值的要素类。

    含障碍的等值线(Contour with Barriers):根据栅格表面创建等值线。如果包含障碍要素,则允许在障碍两侧独立生成等值线。

    曲率(Curvature):计算栅格表面的曲率,包括剖面曲率和平面曲率。

    填挖方(Cut Fill):计算两表面间体积的变化。通常用于执行填挖操作。

    山体阴影(HillShade):通过考虑照明源的角度和阴影,根据表面栅格创建地貌晕渲。

    视点分析(Observer Point):识别从各栅格表面位置进行观察时可见的观察点。

    坡度(Slope):判断栅格表面的各像元中的坡度(梯度或 z 值的最大变化率)。

    视域(Viewshed):确定对一组观察点要素可见的栅格表面位置。

    下面分类来看一下这些工具:

    一、 各种等值线工具

    1) 等值线(Contour)

    根据栅格表面数据创建等值线线要素类。可以指定起算线和间隔。

    2) 等值线列表(Contour list)

    根据栅格表面创建所指定等值线值的要素类。

    3)含障碍的等值线(Contour with Barriers)

    根据栅格表面创建等值线。如果包含障碍要素,则允许在障碍两侧独立生成等值线。

    TIPS: 关于等值线的质量问题

    少数情况下,所创建等值线的轮廓可能会呈方形或不均匀,看起来犹如沿着栅格像元的边界。出现这种情况可能是因为各栅格的值为整数且恰好落在等值线上。这并不是个问题,该等值线不过是原样呈现数据而已。

    如果希望等值线更平滑,可行的方法包括对源数据进行平滑处理或调整起始等值线。


    二、表面特征相关工具

    1) 坡向(Aspect)

    此工具求得每个像元到其相邻的各个像元方向的 z 值上变化率最大的下坡方向。

    从概念上讲,坡向工具将根据要处理的像元或中心像元周围一个 3 x 3 的像元邻域的 z 值拟合出一个平面。该平面的朝向就是待处理像元的坡向。

    输出栅格的值将是坡向的罗盘方向。坡向由 0 到 359.9 度之间的正度数表示,以北为基准方向按顺时针进行测量。会为输入栅格中的平坦(具有零坡度)像元分配 -1 坡向。

    2) 坡度(Slope)
    坡度是指各像元中 z 值的最大变化率。

    从概念上讲,该工具会将一个平面与要处理的像元或中心像元周围一个 3 x 3 的像元邻域的 z 值进行拟合。该平面的坡度值通过最大平均值法来计算。

    如果邻域内某个像元位置的 z 值为 NoData,则将中心像元的 z 值指定给该位置。如果直接邻域(3 x 3 窗口)中的中心像元为 NoData,则输出将为 NoData。


    确定输出坡度数据的测量单位(度或百分比)。

    DEGREE — 坡度倾角,单位:度,范围:0 ~ 90。

    PERCENT_RISE — 高程增量百分比,也称为百分比坡度,范围:0 ~ ∞。

    该工具可与其他类型的连续数据(如人口)配合使用,用来识别值的急剧变化。

    关于工具的详细算法:http://help.arcgis.com/zh-cn/arcgisdesktop/10.0/help/index.html#/na/009z000000vz000000/

    3) 曲率(Curvature)

    主要输出结果为每个像元的表面曲率。曲率是表面的二阶导数,或者可称之为坡度的坡度。曲率为正说明该像元的表面向上凸。曲率为负说明该像元的表面开口朝上凹入。值为 0 说明表面是平的。

    可供选择的输出曲率类型为:剖面曲率(沿最大斜率的坡度)和平面曲率(垂直于最大坡度的方向)。

    从应用的角度看,该工具的输出可用于描述流域盆地的物理特征,从而便于理解侵蚀过程和径流形成过程。坡度会影响下坡时的总体移动速率。坡向将决定流向。剖面曲率将影响流动的加速和减速,进而将影响到侵蚀和沉积。平面曲率会影响流动的汇聚和分散。

    三、 填挖方(Cut Fill)

    计算两表面间体积的变化。通常用于执行填挖操作。

    默认情况下,将使用专用渲染器来高亮显示执行填挖操作的位置。该渲染器将被挖的区域绘制成蓝色,将被填的区域绘制成红色。没有变化的区域将显示为灰色。

     

    四、 山影(Hillshade)

    此工具考虑的主要因素是太阳(照明源)在天空中的位置。看下此工具的参数设置:

    方位角(Azimuth)指的是太阳的角度方向,是以北为基准方向在 0 到 360 度范围内按顺时针进行测量的。90º 的方位角为东。

    此工具默认方向角为 315º (NW)。

    高度(Altitude)指的是太阳高出地平线的角度或坡度。高度的单位为度,范围为 0(位于地平线上)到 90(位于头上)之间。

    此工具默认值为 45 度。

    Model sahdows

    通过对选择 Model sahdows,可计算局部照明度以及像元是否落入阴影内。阴影值为0,所有其他像元的编码为介于 1 和 255 之间的整数。

    Z 因子(Z factor)

    z 单位与输入表面的 x,y 单位不同时,可使用 z 因子调整 z 单位的测量单位。计算最终输出表面时,将用 z 因子乘以输入表面的 z 值。

    如果 x,y 单位和 z 单位采用相同的测量单位;则 z 因子为 1。这是默认值。此外,z 因子还可用于地形夸大。

    例如,如果 z 单位是英尺而 x,y 单位是米,则应使用 z 因子 0.3048 将 z 单位从英尺转换为米(1 英尺 = 0.3048 米)

    关于工具的详细算法:http://help.arcgis.com/zh-cn/arcgisdesktop/10.0/help/index.html#/na/009z000000z2000000/

    五、可见性分析

    1) 视点分析

    视点工具生成的是在观测点处能够看到哪些位置的像元的二进制编码信息。观察点被限制为最多16 个。此工具仅支持点要素输入。

    可见性信息存储在 VALUE 项中。如果要显示通过视点 3 能看到的所有栅格区域,就打开输出栅格属性表,然后选择视点 3 (OBS3) 等于 1 而其他所有视点等于 0 的记录。

    例如,如下是7个观测点的可视性分析结果的属性表:

    2) 视域

    视域工具会创建一个栅格数据,以记录可从输入视点 或 视点折线要素 位置看到每个区域的次数。该值记录在输出栅格表的 VALUE 项中。

    TIPS:控制可见性分析

    通过在要素属性数据集中指定不同的项,可限制所检查的栅格区域。共有九项:SPOT、OFFSETA、OFFSETB、AZIMUTH1、AZIMUTH2、VERT1、VERT2、RADIUS1 和 RADIUS2。

    附图帮助理解:


                  

    这些值的默认值:

    选项    默认值    参数意义
    SPOT    使用双线性插值进行估计    观测点位置的高程
    OFFSETA    1    观测点高(例如,仪器高),必须为正数
    OFFSETB    0    各像元高(例如,目标高),必须为正数
    AZIMUTH1    0    观测起始方位角
    AZIMUTH2    360    观测终止方位角
    VERT1    90    观测起始竖直角
    VERT2    -90    观测终止竖直角
    RADIUS1    0    起始可见半径
    RADIUS2    无穷大    终止可见半径

    如果视点要素数据集是点要素类,则每个观测点都可具有属性表中的唯一一组观测约束。如果视点要素数据集是折线要素类,则沿输入折线的每个折点都会使用属性表的折线记录中包含的相同观测约束。如果某项不存在,将使用默认值。

    邻域分析

    ArcGIS 的空间分析扩展中,提供了这样一组邻域分析工具:

     

    1. 1. 块统计(Block Statistics)
    2. 2. 滤波器(Filter)
    3. 3. 焦点流(Focal Flow)
    4. 4. 焦点统计(Focal Statistics)
    5. 5. 线统计
    6. 6. 点统计

    1. 块统计(Block Statistics)

    分块统计,按照指定邻域类型计算区域统计值,输出区域为指定邻域类型的外接矩形。

    以下为邻域的形式:

    • NbrAnnulus({innerRadius}, {outerRadius}, {CELL | MAP})
    • NbrCircle({radius}, {CELL | MAP}
    • NbrRectangle({width}, {height}, {CELL | MAP})
    • NbrWedge({radius}, {start_angle}, {end_angle}, {CELL | MAP})
    • NbrIrregular(kernel_file)
    • NbrWeight(kernel_file)

    Irregular与Weight邻域类型需要指定核文件( .txt 文件)。

    可以进行统计的计算类型:

    • MEAN/平均值;
    • MAJORITY/众数(出现次数最多的值);
    • MAXIMUM/最大值;
    • MEDIAN/中值;
    • MINIMUM/最小值;
    • MINORITY/少数(出现次数最少的值);
    • RANGE/范围(最大值和最小值之差)。
    • STD/标准差。
    • SUM/总和。
    • VARIETY/变异度(唯一值的数量)。

    例如,输入为圆形邻域,输出为外接矩形的像元范围:

    2. 滤波器(Filter)

    对栅格执行平滑(低通)滤波器或边缘增强(高通)滤波器。

    滤波器工具既可用于消除不必要的数据,也可用于增强数据中不明显的要素的显示。

    低通滤波(平滑边界):

    高通滤波(边缘增强):

    3. 焦点流(Focal Flow)

    焦点流工具使用直接的 3 x 3 邻域来确定一个像元的八个相邻点中哪一个流向此像元。

    焦点流也可以是液体由高到低流动的方向,也可以是定义的任何移动(比如污染物向污染浓度较低的地方流入)。

    举个例子,各个方向流向像元中心像元的值总和是最终值。

    4. 焦点统计(Focal Statistics)

    为每个输入像元位置计算其周围指定邻域内的值的统计数据。

    统计类型与邻域形状与块统计是相同的,区别在于,块统计的输出是整个邻域的外接矩形范围,而焦点统计的输出,是邻域内的焦点栅格。如下图:

    5. 线统计

    工具用于为每个输出栅格像元周围的圆形邻域内所有线的指定字段值计算统计量。

    可用的统计量类型有:均值、众数、最大值、中位数、最小值、少数、范围、标准差以及变异度。只有众数、少数和中位数统计量是根据线长度进行加权的。

    还没有想到此工具的应用场景,以后有了再来追加。

    6. 点统计

    该工具类似于焦点统计工具,不同之处在于它直接对点要素而非栅格进行操作。直接对要素进行操作的其中一个优点在于,即使点距离过近,在转换成栅格时点也不会丢失。

    区域分析

    空间分析扩展中,有关区域分析,提供了如下工具:

    可以将其分为这样几类:

    一、确定区域中类的面积的工具

    面积制表(Tabulate Area)

    面积制表工具以表的形式进行输出。在此表中:

    1)区域数据集的每个唯一值均有一条记录。

    2)类数据集的每个唯一值均有一个字段。

    3)每个记录将存储每个区域内每个类的面积。

    TIPS:

    使用此工具的常见错误:

    1.“一个或多个输入没有关联属性表” 错误

    此错误通常是由于区域输入中没有所需的属性表而导致的。

    如果区域输入是一个栅格数据,请先使用构建栅格属性表为其创建一个属性表。

    如果区域输入是一个要素数据集,则在内部转换为栅格的过程中会自动创建属性表。

    2.“无法分配内存” 错误

    程序使用内部表执行面积计算。如果区域输入的值域非常大(百万级别),则处理这些表的内存需求可能会接近或超出指定的系统分页文件大小。

    如果所配置的内存总量不足,操作将失败,并将显示“无法分配内存”消息。此问题通常有两种解决方法:

    A) 您可增大虚拟内存设置以避免出现此错误。但是,要注意的是,工具执行完毕后,操作系统不会立即释放其所占用的虚拟内存。从而可能会降低计算机的总体性能。

    B) 另一种方法是减小区域的值域(建议方法)。步骤如下:首先向区域属性表添加一个新项和一个索引值,然后对该项使用面积制表,最后再将结果与原始区域输入相关联。
    例如,如有仅有三个区域值 2,120,000、4,070,000 和 9,540,000,则可将它们除以 10,000,从而得到区域值 212、407 和 954。

    3.输出面积小于预计结果

    输出表中的某些面积值可能小于预计结果。

    这通常与输入中的 NoData 像元有关,经重采样以匹配其他更为粗糙的输入之后,这些具有高分辨率的像元将变为更大的 NoData 区域。

    为避免此情况,请对较粗糙的输入栅格进行重采样以使其与较精细的输入栅格的分辨率相匹配,或者将像元大小栅格分析环境设置为输入的最小值。

     

    二、填充指定区域的工具

    区域填充(Zonal Fill )

    输入区域栅格数据可以为整型或浮点型。使用权重栅格数据沿区域边界的最小像元值填充区域。

    区域填充可用作水文分析的一部分,将洼地填充至分水岭边界的最小高程。

    此工具有待实践,结合水文分析学习。

    三、作用于区域形状的工具

    分区几何统计(Zonal Geometry)

    这里说的区域是指具有相同值的所有像元。各区无需相连。栅格和要素数据集都可用于工具的输入。

    这个工具的亮点在于可以统计区的总面积(AREA)、总周长(PERIMETER)、厚度(THICKNESS)、质心(CENTROID)。其他三个比较好理解,我们看下厚度的概念。

    分区厚度分析可计算输入栅格上各个区域中最深或最厚点距其周围像元的距离。

    实际上,厚度就是可在各个区域中(不包括区域外部的任何像元)绘制的最大圆的半径(以像元为单位)。如下图:

     

    以表格显示分区几何统计(Zonal Geometry as Table)

    将上述统计结果输出到Table表中。

    其中,最后三个参数,用于描述各个区域的椭圆近似的形状。定义椭圆形状和大小的参数为长轴、短轴和方向。各椭圆的面积与为其分配的区域的面积相等。

    MAJORAXIS:长轴的长度;MINORAXIS:短轴的长度。以地图单位表示。

    ORIENTATION 值的单位为度,取值范围为 0 至 180。方向定义为 x 轴与椭圆长轴之间的角度。方向的角度值以逆时针方向增加,起始于东方向(右侧水平位置)的 0 值,在长轴垂直时通过 90 位置。如果某个特定区域仅由一个像元组成,或者该区域为单个像元方块,那么会将椭圆(在此情况下为圆)的方向设置为 90 度。

    四、确定某输入栅格值在另一区域中的频数分布的工具

    区域直方图(Zonal Histogram)

    创建显示各唯一区域值输入中的像元值频数分布的表和直方图(Graph类型)。

    区域字段必须为整型或字符串类型。

    五、作用于区域属性的工具

    分区统计(Zonal Statistics)

    以表格显示分区统计(**Zonal Statistics as Table**)

    这两个工具是,计算在另一个数据集的区域内栅格数据值的统计信息。这里的区域定义为输入中具有相同值的所有区。各区无需相连。栅格和要素数据集都可用于区域输入。

    前者生成栅格数据,后者生成统计表。

    多元分析

    通过多元统计分析可以探查许多不同类型的属性之间的关系。

    有两种可用的多元分析:分类(监督分类与非监督分类/Supervised&Unsupervised))和主成分分析/Principal Component Analysis (PCA)。

    ArcGIS 提供了如下工具:

     

    1. 一、确定区域中类的面积的工具
      1. 面积制表(Tabulate Area)
    2. 二、填充指定区域的工具
      1. 区域填充(Zonal Fill )
    3. 三、作用于区域形状的工具
      1. 分区几何统计(Zonal Geometry)
      2. 以表格显示分区几何统计(Zonal Geometry as Table)
    4. 四、确定某输入栅格值在另一区域中的频数分布的工具
      1. 区域直方图(Zonal Histogram)
    5. 五、作用于区域属性的工具
      1. 分区统计(Zonal Statistics)

    一、波段集统计工具(Band Collection Statistics)

    栅格波段必须具有一个公共交集。如果不存在公共交集,则会出现错误,且不会创建任何输出。

    如果栅格波段的范围不同,统计数据将以所有输入栅格波段的共同的空间范围来计算。默认情况下,像元大小为输入栅格的最大像元的大小;否则,将取决于栅格分析环境设置。

    此工具计算每个图层的基本统计测量值(最小值、最大值、平均值和标准差),如果勾选协方差和相关矩阵,还可以得到这两个值。

    二、创建特征(Create Signature)

     

    创建由输入样本数据和一组栅格波段定义的类的 ASCII 特征文件。该工具可创建将用作其他多元分析工具的输入参数的文件。

    该文件由两部分组成:

    1) 所有类的常规信息,例如图层数、输入栅格名称和类别数。
    2) 每个类别的特征文件,由样本数、平均值和协方差矩阵组成。

    三、编辑特征(Edit Signature)

    通过合并、重新编号和删除类特征来编辑和更新特征文件。

    输入特征重映射文件是 ASCII 文件,其每一行有两列值与之对应,以冒号分隔。第一列是原始类 ID 值。第二列包含用于在特征文件中更新的新类 ID。文件中的所有条目必须基于第一列以升序进行排序。

    编辑特征文件的写法是固定的,如下:

    只有需要编辑的类才必须被放入特征重映射文件;任何在重映射文件中不存在的类将保持不变。

    要合并一组类,原类 ID:新类 ID。

    要删除类特征,使用 -9999 作为该类第二列的值。

    要重新编号,将类 ID 重新编号为某个不存在于输入特征文件中的值。

    示例:

    1
    2
    3
    4
    
    2 : 3
    4 : 11
    5 : -9999
    9 : 3
    

     

    上例将使用 3 合并类 2 和 类 9,使用 11 合并类 4,并将删除类 5。

    四、树状图(Dendrogram)

    构造可显示特征文件中连续合并类之间的属性距离的树状图。

    有关其工作原理,详见:http://help.arcgis.com/zh-cn/arcgisdesktop/10.0/help/index.html#/na/009z000000q6000000/

    五、最大似然法分类(Maximum Likelihood Classification)

    最大似然法分类工具所用的算法基于两条原则:

    1) 每个类样本中的像元在多维空间中呈正态分布
    2) 贝叶斯决策理论

    TIPS:工具中有几个参数需要注意:

    reject_fraction:将因最低正确分配概率而得不到分类的像元部分。

    默认值为 0.0;将对每个像元进行分类。共有 14 个有效输入:0.0、0.005、0.01、0.025、0.05、0.1、0.25、0.5、0.75、0.9、0.95、0.975、0.99 和 0.995。

    a_priori_probabilities:指定将如何确定先验概率。

    • EQUAL — 所有类将具有相同的先验概率。
    • SAMPLE — 先验概率将与特征文件内所有类中采样像元总数的相关的各类的像元数成比例。
    • FILE — 先验概率将会分配给输入 ASCII 先验概率文件中的各个类。

    以下是通过三类样本的特征文件,分类的栅格数据的示例:

     

    六、Iso 聚类(Iso Cluster)

    Iso表示:iterative self-organizing –迭代自组织方法。

    Iso聚类工具对输入波段列表中组合的多元数据执行聚类。所生成的特征文件(*.gsg)可用作生成非监督分类栅格的分类工具(例如最大似然法分类)的输入。

    类数的最小有效值为二。不存在最大聚类数。通常情况下,聚类越多,所需的迭代就越多。

    七、Iso 聚类非监督分类(Iso Cluster Unsupervised Classification)

    此工具为脚本工具,此工具结合了 Iso 聚类工具与最大似然法分类工具的功能。输出经过分类的栅格。

    八、类别概率(Class Probability)

    如果发现分类中的某些区域被分配给某一类的概率不是很高,则说明可能存在混合类。

    例如,根据分类概率波段,一个已被分类为森林的区域属于森林类的概率只有 55%。您又发现同一区域属于草地类的概率却有 40%。显然,该区域既不属于森林类也不属于草地类。它更可能是一个森林草地混合类。对于使用分类概率工具生成的分类概率,最好检查分类结果。

    生成的多波段栅格数据的波段数等于类别数,每个波段表示某种分类的可能概率,像元值从0至100。

    九、主成分分析(Principal Components)

    对一组栅格波段执行主成分分析 (PCA) 并生成单波段栅格作为输出。此工具生成的是波段数与指定的成分数相同的多波段栅格。

    主成分分析工具用于将输入多元属性空间中的输入波段内的数据变换到相对于原始空间对轴进行旋转的新的多元属性空间。新空间中的轴(属性)互不相关。之所以在主成分分析中对数据进行变换,主要是希望通过消除冗余的方式来压缩数据。

    以上提到的几个工具,在ArcGIS 10.x版本中,除了在ArcToolbox中可以找到,在 Image Classification 工具条中也可以找到对应的功能,如下图:

    这个工具集涉及很多遥感的理论知识,仅仅使用工具是不够的,后面需要多多学习……

    插值分析

    在实际工作中,由于成本的限制、测量工作实施困难大等因素,我们不能对研究区域的每一位置都进行测量(如高程、降雨、化学物质浓度和噪声等级)。这时,我们可以考虑合理选取采样点,然后通过采样点的测量值,使用适当的数学模型,对区域所有位置进行预测,形成测量值表面。插值之所以可称为一种可行的方案,是因为我们假设,空间分布对象都是空间相关的,也就是说,彼此接近的对象往往具有相似的特征。

    ArcGIS的空间分析中,提供了插值(Interpolation)工具集,如下:

    1. 1. 反距离权重法(IDW–Inverse Distance Weighted)
    2. 2. 克里金法(Kriging)
    3. 3. 自然邻域法(Natural Neighbor)
    4. 4. 样条函数(Spline)
    5. 5. 含障碍的样条函数(Spline with Barriers)
    6. 6. 地形转栅格(Topo to Raster)
    7. 7. 趋势(trend)

    1. 反距离权重法(IDW–Inverse Distance Weighted)

    此方法假定所映射的变量因受到与其采样位置间的距离的影响而减小。

    幂参数:

    IDW主要依赖于反距离的幂值。基于距输出点的距离,幂参数可以控制已知点对内插值的影响。幂参数是一个正实数,默认值为 2,一般在0.5至3之间取值。随着幂值的增大,内插值将逐渐接近最近采样点的值。指定较小的幂值,将对距离较远的周围点产生更大影响,会产生更加平滑的表面。由于反距离权重公式与任何实际物理过程都不关联,因此无法确定特定幂值是否过大。作为常规准则,认为值为 30 的幂是超大幂,因此不建议使用。此外还需牢记一点,如果距离或幂值较大,则可能生成错误结果。

    障碍:

    障碍是一个用作可限制输入采样点搜索的隔断线的折线 (polyline) 数据集。一条折线 (polyline) 可以表示地表中的悬崖、山脊或某种其他中断。仅将那些位于障碍同一侧的输入采样点视为当前待处理像元。

    注意事项:

    (1)因为反距离权重法是加权平均距离,所以该平均值不可能大于最大输入或小于最小输入。因此,如果尚未对这些极值采样,便无法创建山脊或山谷。

    (2)此工具最多可处理约 4,500 万个输入点。如果输入要素类包含 4,500 万个以上的点,工具可能无法创建结果。

    工具执行截图:

     

    2. 克里金法(Kriging)

    克里金法假定采样点之间的距离或方向可以反映可用于说明表面变化的空间相关性。克里金法是一个多步过程;它包括数据的探索性统计分析、变异函数建模和创建表面,还包括研究方差表面。该方法通常用在土壤科学和地质中。

    3. 自然邻域法(Natural Neighbor)

    可找到距查询点最近的输入样本子集,并基于区域大小按比例对这些样本应用权重来进行插值。该插值也称为 Sibson 或“区域占用 (area-stealing)”插值。

    4. 样条函数(Spline)

    使用二维最小曲率样条法将点插值成栅格表面。生成的平滑表面恰好经过输入点。

    5. 含障碍的样条函数(Spline with Barriers)

    通过最小曲率样条法利用障碍将点插值成栅格表面。障碍以面要素或折线要素的形式输入。样条函数法工具所使用的插值方法使用可最小化整体表面曲率的数学函数来估计值。

    6. 地形转栅格(Topo to Raster)

    将点、线和面数据插值成符合真实地表的栅格表面。

    依据文件实现地形转栅格(Topo to Raster by file)

    通过文件中指定的参数将点、线和面数据插值成符合真实地表的栅格表面。通过这种技术创建的表面可更好的保留输入等值线数据中的山脊线和河流网络。

    7. 趋势(trend)

    使用趋势面法将点插值成栅格曲面。趋势表面会逐渐变化,并捕捉数据中的粗尺度模式。

    以上是插值工具的简单说明与比较,这些工具的背后都有庞大的理论基础和复杂的算法,需要进一步学习整理和补充。

    水文分析

    接收雨水的区域以及雨水到达出水口前所流经的网络被称为水系。流经水系的水流只是通常所说的水文循环的一个子集,水文循环还包括降雨、蒸发和地下水流。水文分析工具重点处理的是水在地表上的运动情况。“水文分析”工具用于为地表水流建立模型。

    盆域分析(Basin):创建描绘所有流域盆地的栅格。

    填洼(Fill):通过填充表面栅格中的汇来移除数据中的小缺陷。

    流量(Flow Accumulation):创建每个像元累积流量的栅格。可选择性应用权重系数。

    流向(Flow Direction):创建从每个像元到其最陡下坡相邻点的流向的栅格。

    水流长度(Flow length):计算沿每个像元的流路径的上游(或下游)距离或加权距离。

    汇(Sink):创建识别所有汇或内流水系区域的栅格。

    捕捉倾泻点(Snap pour point):将倾泻点捕捉到指定范围内累积流量最大的像元。

    河流连接(Stream link):向各交汇点之间的栅格线状网络的各部分分配唯一值。

    河网分级(Stream Order):为表示线状网络分支的栅格线段指定数值顺序。

    栅格河网矢量化(Stream to Feature):将表示线状网络的栅格转换为表示线状网络的要素。

    分水岭(Watershed):确定栅格中一组像元之上的汇流区域。

     

    了解水系的术语,如下图:

    以下流程图显示的是从数字高程模型 (DEM) 中提取水文信息(如分水岭边界和河流网络)的过程:

    现在就以手中的这个DEM为例来依次使用工具集中的工具,来学习这部分功能:

     

    一、流向(Flow Direction)

    流向工具的输出是值范围介于 1 到 255 之间的整型栅格。从中心出发的各个方向值为:

    例如,如果最陡下降方向位于当前处理像元的左侧,则将该处理像元的流向编码将为 16。

    如果像元的 z 值在多个方向上均发生相同变化,并且该像元是凹陷点的一部分,则该像元的流向将被视为未定义。此时,该像元在输出流向栅格中的值将为这些方向的总和。例如,如果 z 值向右(流向 = 1)和向下(流向 = 4)的变化相同,则该像元的流向为 1 + 4 = 5。可以使用汇工具将具有未定义流向的像元标记为凹陷点。

     

    二、汇(Sink)

    汇是指流向栅格中流向无法被赋予八个有效值之一的一个或一组空间连接像元。汇被视为具有未定义的流向,并被赋予等于其可能方向总和的值。

    汇工具的输出是一个整型栅格,其中每个汇都被赋予一个唯一值。汇的编号介于 1 到汇的数量之间。

     

    三、填洼(Fill)

    通过填充表面栅格中的汇来移除数据中的小缺陷。

    凹陷点是指具有未定义流域方向的像元;其周围的像元均高于它。倾泻点相对于凹陷点的汇流区域高程最低的边界像元。如果凹陷点中充满了水,则水将从该点倾泻出去。

    TIPS:有关填充的Z限制

    要填充的凹陷点与其倾泻点之间的最大高程差。如果凹陷点与其倾泻点之间的 z 值差大于 z 限制,则不会填充此凹陷点。

    默认情况下将填充所有凹陷点(不考虑深度)。

     

    四、流量(Flow Accumulation)

    创建每个像元累积流量的栅格。流量累积将基于流入输出栅格中每个像元的像元数。

    高流量的输出像元是集中流动区域,可用于标识河道。流量为零的输出像元是局部地形高点,可用于识别山脊。

    流量工具不遵循压缩环境设置。输出栅格将始终处于未压缩状态。

    通过上面的填洼,求流向,得到如下流量图,看到了河道:

     

    五、河网分级(Stream Order)

    河网分级是一种将级别数分配给河流网络中的连接线的方法。此级别是一种根据支流数对河流类型进行识别和分类的方法。仅需知道河流的级别,即可推断出河流的某些特征。

    河网分级工具有两种可用于分配级别的方法。这两种方法由 Strahler (1957) 和 Shreve (1966) 提出。在这两种方法中,始终将 1 级分配给上游河段。

    Strahler 河流分级方法:

    在 Strahler 法中,所有没有支流的连接线都被分为 1 级,它们称为第一级别。当级别相同的河流交汇时,河网分级将升高。

    因此,两条一级连接线相交会创建一条二级连接线,两条二级连接线相交会创建一条三级连接线,依此类推。但是,级别不同的两条连接线相交不会使级别升高。例如,一条一级连接线和一条二级连接线相交不会创建一条三级连接线,但会保留最高级连接线的级别。

    Shreve 河流分级方法:

    Shreve 法考虑网络中的所有连接线。与 Strahler 法相同,所有外连接线都被分为 1 级。但对于 Shreve 法中的内连接线,级别是增加的。例如,两条一级连接线相交会创建一条二级连接线,一条一级连接线和一条二级连接线相交会创建一条三级连接线,而一条二级连接线和一条三级连接线相交则会创建一条五级连接线。

    因为级别可增加,所以 Shreve 法中的数字有时指的是量级,而不是级别。在 Shreve 法中,连接线的量级是指上游连接线的数量。

     

    六、栅格河网矢量化(Stream to Feature)

    栅格河网矢量化工具使用的算法主要用于矢量化河流网络或任何表示方向已知的栅格线性网络的栅格。

    该工具使用方向栅格来帮助矢量化相交像元和相邻像元。可将两个值相同的相邻栅格河网矢量化为两条平行线。

    这与栅格转折线 (Raster to Polyline) 工具相反,后者通常更倾向于将线折叠在一起。下图是两者的对比:

     

    七、河流连接(Stream link)

    向各交汇点之间的栅格线状网络的各部分分配唯一值。

    “连接”是指连接两个相邻交汇点、连接一个交汇点和出水口或连接一个交汇点和分水岭的河道的河段。

     

    八、水流长度(Flow Length)

    水流长度工具的主要用途是计算给定盆地内最长水流的长度。该度量值常用于计算盆地的聚集时间。这可使用 UPSTREAM 选项来完成。

    该工具也可通过将权重栅格用作下坡运动的阻抗,来创建假设降雨和径流事件的距离-面积图。

     

    九、捕捉倾泻点(Snap pour point)

    捕捉倾泻点工具用于确保在使用分水岭工具描绘流域盆地时选择累积流量大的点。

    捕捉倾泻点将在指定倾泻点周围的捕捉距离范围内搜索累积流量最大的像元,然后将倾泻点移动到该位置。

     

    十、分水岭(Watershed)

    确定栅格中一组像元之上的汇流区域。

     

    十一、盆域

    创建描绘所有流域盆地的栅格。

    通过识别盆地间的山脊线,在分析窗口中描绘流域盆地。通过分析输入流向栅格数据找出属于同一流域盆地的所有已连接像元组。通过定位窗口边缘的倾泻点(水将从栅格倾泻出的地方)及凹陷点,然后再识别每个倾泻点上的汇流区域,来创建流域盆地。这样就得到流域盆地的栅格。

    以下是盆域分析示例:

     

     

     

    转自穆晓燕博客,比较喜欢她写的技术文章,讲的很细,也很清楚:http://kikitamap.com/

     

     

    展开全文
  • iOS dSYM 文件分析工具

    热门讨论 2014-08-05 18:07:55
    使用步骤: 1.将打包发布软件时的xcarchive文件拖入软件窗口内的任意位置(支持多个文件同时拖入,注意:文件名不要包含空格) 2.选中任意一个版本的xcarchive文件,右边...4.将错误地址输入工具的文本框中,点击分析
  • 网络分析工具——WireShark的使用(超详细)

    万次阅读 多人点赞 2021-01-24 13:32:50
    网络分析工具——WireShark的使用简介WireShark软件安装Wireshark 开始抓包示例WireShark抓包界面WireShark 主要分为这几个界面TCP包的具体内容Wireshark过滤器设置wireshark过滤器表达式的规则Wireshark抓包分析TCP...
  • GChisto GC日志分析工具

    热门讨论 2014-10-24 15:18:32
    GChisto是一款优秀的GC日志分析工具。解压后双击GChisto.jar运行程序。enjoy it.
  • 常用Java静态代码分析工具的分析与比较
  •  本文是一个静态代码分析工具的清单,但是为公司产品需要付费使用。共有37个公司,有些公司包含多个工具。其中27个公司有多语言 工具,1个公司为PHP工具、2个公司为.NET工具、1个公司为Ada工具、4个公司为C++...
  • Android性能分析工具

    千次阅读 2016-10-04 11:48:33
    DDMS 的全称是Dalvik Debug Monitor Service,是Android 开发环境中的Dalvik 虚拟机调试监控服务HierarchyViewerUI性能分析工具,分析布局文件的性能,层级嵌套UI布局复杂程度及冗余分析,View嵌套的冗余层级View的...
  • 为了解答大家的疑惑,今天我测评了5款较为常用的而且口碑比较不错的大数据分析工具,来给大家看看到底哪个大数据分析工具才是最好用的! 一、为什么要做大数据分析 大数据分析的主要目的是辅助公司决策,...
  • Android 性能分析工具——Perfetto 介绍

    万次阅读 2020-12-09 18:01:25
    Android 性能分析工具——Perfetto 介绍 Perfetto 是 Android 10 中引入的全新平台级跟踪工具。这是适用于 Android、Linux 和 Chrome 的更加通用和复杂的开源跟踪项目。与 Systrace 不同,它提供数据源超集,可让你...
  • 30款常用的大数据分析工具推荐(最新)

    万次阅读 多人点赞 2019-09-27 10:37:32
    数据挖掘和数据分析的能力在当今时代相当重要, 智能的工具是你与竞争对手对抗并为公司业务增加优势的必备条件。我列出了30个最热门的大数据工具,供大家参考。 Part 1:数据采集工具 Part 2:开源数据工具 Part ...
  • VS 性能分析工具

    千次阅读 2019-04-30 15:12:25
    VS性能分析工具的使用 有时我们要对我们的程序进行调优,需要对程序的性能进行分析。性能分析的工具有很多,比如 google profiler、valgrind、xperf等,今天进行整理的是 VS 自带的性能分析工具。 我使用的是VS 2015...
  • 大数据分析工具

    千次阅读 2018-09-29 09:19:57
    摘要:以下是整理的关于数据分析的最全信息,包括微信大数据分析、数据可视化工具、词频分析工具、舆情分析工具、PPT模板工具、互联网趋势分析工具、在线调查工具、网站分析监测工具、社交媒体监测工具等。...
  • javacore\heapdump文件分析工具

    热门讨论 2010-07-29 22:44:26
    websphere javacore与heapdump文件分析工具,jca是javacore分析工具,ha是heapdump分析工具,需要用jdk1.6打开
  • 【Excel】数据分析工具

    千次阅读 2019-08-02 15:12:33
    文章目录一、工具库简介1、作用2、安装3、统计方法归纳二、描述性统计分析1、位置2、参数1)输入参数2)输入参数三、直方图1、介绍2、制作 一、工具库简介 1、作用 便于复杂数据统计分析,可以完成描述统计、直方图...
  • GIS与水文分析(2)ArcGIS水文分析工具的基本原理 作为成熟的GIS软件,ArcGIS提供了相当不错了水文分析工具。包括在spatial扩展中提供的水文分析工具集和地下水分析工具;如果还关注ArcGIS周边,还能发现美国还有一...
  • 大数据分析工具应用

    千人学习 2019-12-23 10:27:20
    Tableau是一款数据分析软件,使用非常简单,通过数据的导入,结合数据操作,即可实现对数据进行分析,并生成可视化的图表直接展现给人们想要看到的通过数据分析出来的信息。它具有许多理想的和独特的功能。使用...
  • excel分析工具

    2009-04-09 21:12:24
    excel 分析工具库 Library
  • 十大MySQL性能分析工具汇总!

    千次阅读 2019-05-24 17:25:50
    前言: MySQL 数据库最常见的两个瓶颈是CPU和I/O的瓶颈。CPU在饱和的时候一般发生在数据装入内存或从磁盘上...正确的借助一些性能分析工具,能够帮助DBA或系统运维人员进行问题快速的定位。 一、 Pt-qurey-digest...
  • Android APP性能分析工具大全

    千次阅读 2019-05-30 17:25:16
    官方推荐工具 第三方工具 一,官方工具 1.1,TraceView 1.2,StrictMode 1.3,Systrace 1.4,Hierarchy Viewer 1.5,AndroidStudio Profiler 二,第三方工具 2.1,Battery Historian(Google) 2.2,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,510,021
精华内容 604,008
关键字:

分析工具