Gnuplot 极坐标直方图

2024-01-11

我有一个数据文件file.dat平面上的点有三列(无线电、角度、温度),我想使用极坐标和颜色图将此数据绘制为直方图,如下图所示,但使用 gnuplot。我可以创建一个histogram.dat文件包含我想要的 bin 的值,但我不知道如何在 gnuplot 中绘制它


据我所知,gnuplot 中没有立即的“极地热图”绘图样式(但我可能是错的,至少,我没有在演示页面上看到示例)。因此,您必须自己实施。

基本上,对于每个数据点,您必须绘制一个填充段。因此,对于每个数据点,您必须在此单个线段的圆周上创建点。然后你可以绘制这一段with filledcurves和特定的颜色。

假设:

  • 数据位于规则网格/角度步长(astep)和半径(rstep).
  • 数据位于数据块中(如何将其从文件中获取到数据块中,请参阅gnuplot:将数据文件 1:1 加载到数据块中 https://stackoverflow.com/q/54600172/7295599)
  • 分隔符是空格
  • 没有标题行

进一步优化潜力:

  • 自动提取astep and rstep.

我希望您可以根据您的需要调整代码。

Code:

### workaround for polar heatmap
reset session

set size square
set angle degrees
unset border
unset tics
set cbtics
set polar
set border polar
unset raxis

# create some test data
f(a,r) = r*cos(a) * r*sin(a) + rand(0)*100
set print $Data
    do for [a=0:350:10] {
        do for [r=1:20] {
            print sprintf("%g %g %g",a,r,f(a,r))
        }
    }
set print

astep = 10
rstep = 1

# create the segments for each datapoint
set print $PolarHeatmap
    do for [i=1:|$Data|] {
        a = real(word($Data[i],1))
        r = real(word($Data[i],2))
        c = real(word($Data[i],3))
        do for [j=-5:5] {
            print sprintf("%g %g %g",a+j*astep/10., r-0.5*rstep, c)
        }
        do for [j=5:-5:-1] {
            print sprintf("%g %g %g",a+j*astep/10., r+0.5*rstep, c)
        }
        print ""
        print ""
    }
set print

set style fill noborder
set palette defined (0 "blue", 1 "grey", 2 "green")

plot $PolarHeatmap u 1:2:3 w filledcurves palette notitle
### end of code

Result:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Gnuplot 极坐标直方图 的相关文章

随机推荐

  • 如何自定义 Jenkins 构建名称?

    当我在 Jenkins 中运行作业时 每个构建都会被赋予一个名称 该名称显示在构建历史记录的 UI 中 基本上是当前日期和时间 我希望能够在那里输入构建参数 以便我可以在构建历史记录中看到哪些分支已构建以及何时构建 我已经搜索过可以执行此操
  • 将 Vue 与 Django 结合使用

    我最近开始使用 Django 开发一些社交媒体网站 我使用默认的django模板引擎来填充我的页面 但此刻我想补充一点javascript使网站更具活力 这意味着 页眉和页脚是每页都一样 标题应该有一个下拉菜单 一个在您键入时进行搜索的搜索
  • 带有包装内容项的 RecyclerView

    我需要实现下一个 UI 元素 未知大小的字符串列表 来自服务器调用 任何项目都应该是包装内容 如果某个项目不适合该行 则该项目将位于下一行 所有列表 网格均居中 我想用RecyclerView with StaggeredGridLayou
  • vite 构建始终使用静态路径

    我有一个简单的设置 包含一个 index html 一些 js 文件和一个 sass 文件 并使用 vite 构建它 我使用的是 vite 默认值 没有配置文件 运行构建后 dist 文件夹中的 index html 将所有内容引用为静态路
  • 将 XPath 与 Perl 结合使用

    我正在尝试复制我的C XPath代码在 Linux 上使用 Perl 执行 我将示例 8 6 中的代码复制并粘贴到Perl 和 XML http oreilly com catalog 9780596002053 如果我理解正确 我应该能够
  • Cloud Firestore:不同查询上的同一文档。是按分开阅读收费吗?

    我已阅读有关如何操作的文档write read在 Firebase 中是收费的 假设我有 20 项待办事项列表project id作为钥匙 todosRef onSnapshot 将被计为20 reads 我用新属性更新了待办事项 todo
  • 使用 apache-poi 4.0.1 库将单元格内容的某些部分设置为粗体/斜体

    我想用粗体和斜体的组合来设置单元格值的内容 就像 这是Sample content 但是 这不适用于 XSSFrichTextString 我正在使用 apache poi 库版本 4 0 1 我尝试使用 XSSFRichTextStrin
  • 为什么在 Common Lisp 中,当我运行参数为 1 的函数“acos”时,答案是错误的?

    当我运行 acos 1 来查找 1 emacs 的反余弦时 我得到了答案 而不是正确答案 0 6 125742f 17 为什么会这样以及如何得到 0 的正确答案 就像 Windows 计算器所说的那样 我在 Windows 8 上使用 SB
  • Spark - 从嵌套数组中的结构中选择列时出错

    更新 我在 JSON 中添加了更多详细信息 struct c 和 array t 以便更清楚地了解异常的位置 再会 我有一个带有结构类型嵌套数组的 Spark DataFrame 我想从该结构中选择一列 但收到错误消息 org apache
  • 在 Splinter 中获取 href 值?

    我想得到href价值来自 a Splinter 中的元素 有没有相关的api方法 如果您使用find by 方法 http splinter cobrateam info docs api driver and element api ht
  • 如何为动态变化的表设置索引?

    我创建了一个表单 您可以在其中使用 javascript 和 jQuery 添加或删除表行 我想知道如何获取和设置每个表行的索引 以便即使我从表中间删除元素也能保持顺序 该表的形式为 thead tr th Index th th Name
  • 嵌入 Jetty 9 - jetty-all.jar 在哪里?

    我正在尝试将 Jetty 9 嵌入到我的项目中 教程位于http www eclipse org jetty documentation current advanced embedding html jetty helloworld ht
  • 将日历设置为特定日期?

    我想设置一个提醒 并在特定日期发出通知 然后我目前正在使用 AlarmManager 和 NotificationManager 当我从 dateDialog 设置选定的日期时 提醒起作用了 如何将日历值设置为固定时间的闹钟 我从中获取当前
  • 在不知道形状的情况下加载 np.memmap

    是否可以加载一个numpy memmap在不知道形状的情况下仍然可以恢复数据的形状 data np arange 12 dtype float32 data resize 3 4 fp np memmap filename dtype fl
  • October CMS 创建多选表单字段

    我需要在 October Cms 后端表单 fields yaml 中创建一个多选表单字段 我应用了以下方法 选择字段 标签 样品类型 下拉菜单属性 多个 多个 该字段的选项将从模型中调用 一切正常 但当我提交表单时 只有第一个选定的选项会
  • for 循环中 findObjectsInBackgroundWithBlock 完成后执行操作

    我的代码中有这样的结构 for METMeetingEntity e in self meetingList PFQuery query PFUser query some query constraints depending on ME
  • 如何从 IntelliJ / PyCharm 中删除材质主题(或重置为默认值)?

    我已经安装了 Material Theme UI 它使我的 IDE 变黑 后来我决定删除并删除插件 不幸的是 这并没有恢复默认颜色 IDE 的某些部分 例如项目窗格 仍然是黑色的 如何恢复 如何从 IntelliJ PyCharm 中删除材
  • Mac OS X Python GUI 管理员提示符

    我有一个 OS X Python 应用程序 它使用 wxPython 作为 GUI 控件 我希望在启动网络服务之前提示用户获得管理权限 类似于使用 Objective C 中的授权服务 API 我发现的最接近的图书馆是 Bob Ippoli
  • android 解码资源为 xml 位图返回 null - API 级别 7

    我有一个奇怪的情况 将我的 PNG 从 drawable hdpi 移动到 drawable 并将 XML 位图放入 drawable hdpi 后 我无法使用以下命令解码这些位图BitmapFactory decodeResource 方
  • Gnuplot 极坐标直方图

    我有一个数据文件file dat平面上的点有三列 无线电 角度 温度 我想使用极坐标和颜色图将此数据绘制为直方图 如下图所示 但使用 gnuplot 我可以创建一个histogram dat文件包含我想要的 bin 的值 但我不知道如何在