Colorbar - Matlab 中的轴刻度

2023-12-21

我正在使用下面的代码

d3 = vals;
n = datesmonth;
figure
plot(n,d3);
colormap(jet(12));
hold on
plot(n, d3,'b-');
scatter(n, d3, [], RiskierInd, 'filled');
caxis([1 12]);
colorbar('YTick',[1:12],...
         'YTickLabels',{'Non-Durables','Durables','Manufacturing','Oil, Gas and Coal ','Chemicals','Technology','Telephone & TV','Utilities','Wholesale and Retail','Health','Finance','Other'})
datetick('x','mm-yyyy')

产生这个数字

我有两个简单的问题:

  1. 是否可以将每种颜色的颜色条字符串条目居中?例如,条目“非耐用品”不应位于颜色条的底部,而应位于最深蓝色类别的中间。

  2. 是否可以手动为每个类别选择颜色?


拉伯特几乎回答了第一个问题。但是,为了完整起见,只需执行此操作并替换当前的caxis call:

caxis([0.5 12.5]);

回答第二个问题,是的,可以。

如果您在代码中注意到,您生成了由 12 个分量组成的颜色图jet主题。这会产生一个 12 x 3 矩阵,其中每个row是一种独特的颜色。因此,如果您想手动选择颜色,您只需重新排列颜色的顺序。如果您查看绘图中的颜色条标签,第一种颜色从底部或蓝色开始,然后依次进行到顶部,或红色。

作为参考,这是由以下方式生成的矩阵jet(12):

>> cmap = jet(12)

cmap = 

     0         0    0.6667
     0         0    1.0000
     0    0.3333    1.0000
     0    0.6667    1.0000
     0    1.0000    1.0000
0.3333    1.0000    0.6667
0.6667    1.0000    0.3333
1.0000    1.0000         0
1.0000    0.6667         0
1.0000    0.3333         0
1.0000         0         0
0.6667         0         0

每行包含一个唯一的 RGB 元组,其中第一列表示红色的量,第二列表示绿色的量,第三列表示蓝色的量。因此,前几种颜色是纯蓝色,然后在该点之后逐渐添加绿色阴影,使其成为青色,依此类推。

矩阵的排列使得第一种颜色是第一行,最后一种颜色是最后一行。如果您想决定哪个标签需要哪种颜色,您只需改编行,以便它与您想要的任何标签匹配。

因此,您有一组标签:

labels = {'Non-Durables','Durables','Manufacturing','Oil, Gas and Coal ','Chemicals','Technology','Telephone & TV','Utilities','Wholesale and Retail','Health','Finance','Other'};

...目前,您已经确定了颜色在颜色图中的显示顺序:

cmap = jet(12);
order = [1 2 3 4 5 6 7 8 9 10 11 12]; %// or order = 1:12;
cmap = cmap(order,:);

你所要做的就是改变order以便您获得正确的颜色以正确的顺序出现。因此,请参考图像中的颜色条,并安排每种颜色的位置,使其与图像中的颜色条的位置一致。order。例如,如果您想要reverse颜色排序,你可以这样做:

cmap = jet(12);
order = [12 11 10 9 8 7 6 5 4 3 2 1]; %// or order = 12:-1:1;
cmap = cmap(order,:);

同样,如果您希望黄色和青色先出现,其余颜色随后出现,您可以这样做:

cmap = jet(12);
order = [8 4 5 6 7 1 2 3 9 10 11 12];
cmap = cmap(order,:); 

一旦你这样做了,你就打电话colormap on cmap并继续你的情节:

%// From before
cmap = jet(12);
order = [4 5 6 8 7 1 2 3 9 10 11 12];
cmap = cmap(order,:); 

%// New
colormap(cmap);
hold on
plot(n, d3,'b-');
scatter(n, d3, [], RiskierInd, 'filled');
caxis([0.5 12.5]); %// Change
colorbar('YTick',[1:12],...
         'YTickLabels',{'Non-Durables','Durables','Manufacturing','Oil, Gas and Coal ','Chemicals','Technology','Telephone & TV','Utilities','Wholesale and Retail','Health','Finance','Other'})
datetick('x','mm-yyyy')

但是,如果您想自己手动选择颜色,那就会更复杂一些。您只需要知道您想要什么颜色,然后将它们放入矩阵中即可。请记住,每种颜色都是一个 RGB 元组,并且放置在一行中。不过,您必须查看颜色选择器才能知道每个组件应该加权以获得正确的颜色。

到这里:http://colorpicker.com http://colorpicker.com- 您可以选择您想要的确切颜色并记录 RGB 值。之后,将每个值除以 255 并将其作为条目放入颜色图矩阵中。每种颜色都是一行,其中第一列是红色,第二列是绿色,第三列是蓝色。如果您确实想控制什么颜色与什么类别相匹配,则可以这样做。您必须立即确定红色、绿色和蓝色值的正确组合。

祝你好运!

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

Colorbar - Matlab 中的轴刻度 的相关文章

  • Python 函数句柄 ala Matlab

    在 MATLAB 中可以创建function handles http www mathworks co uk help techdoc ref function handle html与类似的东西 myfun arglist body 这
  • 使用mat2cell将MxN的矩阵划分为1xN大小的M矩阵

    我有一个大小为 MxN 的矩阵 比方说 1867x3 1867 行和 3 列 我想将其分成 1867 个大小为 1x3 的单元格 我使用了mat2cell X 1 1866 这里X是矩阵 1867x3 结果给出了两个单元格 一个单元格的大小
  • 如何在 QT 中绘制点?

    我正在用 QT 用 C 编写一个应用程序 其中有 n 个点并计算它的凸包 然而 一旦计算出来 我不知道如何绘制点并绘制船体的边界 制作菜单按钮等很简单 但我不确定我是否知道执行此操作的工具 你怎么做到这一点 图形视图 addEllipse
  • python 中带有滑块的散点图

    嘿 我正在尝试使用滑块创建一个散点图 当我滑动时该滑块会更新该图 这是我到目前为止的代码 它绘制了一个散点图和一个滑块 但当我移动它时 什么也没有发生 我怀疑问题出在 set ydata有点 但我似乎无法在互联网上找到其他方法 import
  • 在 R markdown 中,如何防止非缓存块的绘图被单独保存?

    当编织 R markdown 文件时 从任何块输出的图cache TRUE独立于 HTML 输出保存 这对我来说很有意义 然而 如果即使是单个块也有cache TRUE选项集 all块 包括那些cache FALSE 将他们的地块独立保存
  • 一维高斯分布函数的绘图

    如何使用均值和标准差参数值 1 1 0 2 和 2 3 绘制一维高斯分布函数图 我是使用 Python 编程的新手 先感谢您 凭借着优秀的matplotlib and numpy包 from matplotlib import pyplot
  • MATLAB 特征函数

    我很好奇哪里可以找到完整的描述FEATURE功能 它接受哪些论点 没有找到文档 我只听说过memstats and getpid 还要别的吗 gt gt which feature built in undocumented 注意 更完整的
  • Maxima 循环绘图,必须关闭一个绘图才能看到下一个绘图

    Maxima 循环绘图 必须关闭一个绘图才能看到下一个绘图 我在windows环境下工作 但在linux中会将函数绘制在一个视图中 例如这个函数 for d 0 1 thru 1 step 0 1 do draw2d explicit x
  • 更改 ggplot 对象的数据集

    我正在绘制数据的子集ggplot2我想知道我是否会以某种方式使用已包含在ggplot原始数据子集中的对象 举个例子 这是第一个图 代码块 1 require ggplot2 p lt ggplot mtcars aes mpg wt col
  • MATLAB:具有复数的 printmat

    我想使用 MATLAB 的printmat显示带有标签的矩阵 但这不适用于复数 N 5 x rand N 1 y rand N 1 z x 1i y printmat x y z fftdemo N 1 2 3 4 5 x y x iy O
  • 有没有办法在matlab中进行隐式微分

    我经常使用 matlab 来帮助我解决数学问题 现在我正在寻找一种在 matlab 中进行隐式微分的方法 例如 我想区分y 3 sin x cos y exp x 0关于dy dx 我知道如何使用数学方法通常做到这一点 但我一直在努力寻找使
  • 连接极线ggplot图中的间隙

    当 ggplot 使用极坐标绘制线图时 它会在最高和最低 x 值之间留下间隙 Dec and Jan如下 而不是缠绕成螺旋状 我怎样才能继续这条线并缩小差距 特别是 我想使用月份作为 x 轴 但在一条循环线上绘制多年的数据 Reprex l
  • 在 Matlab 中将 datenum 转换为 datetime 的最快方法

    我在 Matlab 中将 datenum 转换为 datetime 时遇到问题 Given dnum floor now floor now 1 我尝试了以下方法 datenum dnum 但这没有用 我发现有效的方法是 datetime
  • 我需要转义该 MATLAB 字符串中的字符吗?

    我想在 MATLAB 中调用以下 bash 命令 grep Up to test linux vision1 1 log awk print 7 I use system 在MATLAB中 但结果有错误 gt gt status strin
  • 在 Pandas 数据框中显示对图

    我试图通过从 pandas 数据框中的 scatter matrix 创建来显示一对图 这就是创建配对图的方式 Create dataframe from data in X train Label the columns using th
  • 在 RStudio 中循环期间绘图

    我正在 R 模拟退火 中实现旅行商问题 TSP 的解决方案 并且我想定期输出当前的最佳路径 我已经搜索了很多关于如何在for循环并迄今为止失败 我使用 RStudio 并希望查看生成的图表 如果您曾经看过 TSP 求解器的工作 您就会明白观
  • matlab中的正则逻辑回归代码

    我正在尝试正则化 LR 在 matlab 中使用以下公式很简单 成本函数 J theta 1 m sum y i log h x i 1 y i log 1 h x i lambda 2 m sum theta j 梯度 J theta t
  • 检测植物图片中的所有分支

    我想知道有什么可以检测下图中的所有绿色树枝 目前我开始应用 Frangi 过滤器 options struct FrangiScaleRange 5 5 FrangiScaleRatio 1 FrangiBetaOne 1 FrangiBe
  • 通过 Matlab 访问 Physionet 的 ptbdb 中的数据库

    我首先设置系统 old path which rdsamp if isempty old path rmpath old path 1 end 8 end wfdb url http physionet org physiotools ma
  • 如何在 matlab 中创建由多个 3d 图像数据数组组成的数组

    我正在阅读 15 张图片imagedata imread imagename jpg 它的大小总是320 by 320 by 3 如何将数据放入数组中 使用 for for 循环 以便在访问新数组的第一个元素时获得输入的第一个图像的 RGB

随机推荐

  • 我是否必须使用 ngrok 来公开 MERN 堆栈的前端和后端才能使 CRUD 操作正常工作?

    我正在本地计算机上开发 MERN 应用程序 前端位于 localhost 3000 后端位于 localhost 3003 我的前端代码中有一个请求 如下所示 axios get localhost 3000 comments params
  • 如何使用密码自动登录 Windows 7

    我正在开发基于 Windows 7 Ultimate 的 Kiosk 应用程序 I need 使用远程桌面连接连接到信息亭 因此用户名和 似乎需要密码 启用自助服务终端的自动登录 知道如何实现这些功能吗 Thanks 看来你已经有了答案 但
  • MVC 5 属性路由包罗万象

    如何使用 MVC 中的新属性路由创建捕获所有路由 我试过这个 Route pagenode Order 999 但是当我有一条命名路线时 Route contact 我得到了 Multiple controller types were f
  • 使用AVPlayer播放加密视频

    我正在实现一个包含视频播放器的应用程序 由于某些原因 视频文件使用 AES 加密 并且这些文件的大小可能相当大 以避免将其作为一个整体加载到 RAM 中 我正在寻找一些用 AVPlayer 来播放它的方法 Tried 1 按照此处建议的自定
  • 可以编译Scala程序但无法运行它们

    我可以在终端中使用 scalac 编译 scala 程序 但收到警告 Charless Macintosh src Charles scalac hello scala Charless Macintosh src Charles scal
  • 以正确的尺寸打印 HTML5 Canvas

    是否有正确的方法来指定画布元素的尺寸 例如以毫米为单位 以便如果我将其打印出来它将具有正确的尺寸 我试过这个简单的例子
  • 输出子句 VS 触发器

    在我们的数据库中 大多数表都有一个dbupddate字段表示datetime最后的INSERT or UPDATE应用在该行 为了避免该字段有错误的值 存在触发器 有时AFTER 有时INSTEAD OF 这确保最终该值是正确的 而不是有人
  • EF 4.1 Code First 中的 XML 数据类型

    我想使用 SQL Serverxmltype 作为实体类的列类型 根据这个线程 https social msdn microsoft com Forums en US 2d6b75ee a1b7 44bf b5f3 d32b12f2db6
  • 无法连接到 Elasticsearch(通过 Curl)

    我最近安装了 Elasticsearch 前几天一切都运行良好 但不知何故今天它停止工作了 当我启动服务时 它声称没问题 sudo etc init d elasticsearch start Starting Elasticsearch
  • 如何强制mysql UPDATE查询使用索引?如何让mysql引擎自动使用索引而不是强制使用索引?

    下面是不使用最近创建的复合索引的更新查询 查询计划 解释表明它没有使用名为的复合索引radacctupdate我认为这将使更新查询更快 表上还有其他索引可供其他查询使用 EXPLAIN UPDATE radacct SET acctstop
  • 如何在Scheme中列出评估的所有中间步骤

    例如 如果有表达式 map lambda x add1 x 1 2 3 其评估结果为 2 3 4 如何显示所有中间步骤 在本例中为 map lambda x add1 x 2 2 3 map lambda x add1 x 2 3 3 我认
  • 每次调试运行时禁用辅助服务

    每次启动新的调试实例时 我的辅助功能服务都会重置为禁用状态 有什么方法可以在连续的调试运行中保持启用它 因为每次启用它以调试服务是相当漫长且无聊的 我在真实设备和模拟器上有相同的行为 服务中没有异常 我尝试了事件处理程序中没有代码的事件 我
  • 在编译库中查找 System.gc()

    我在 gc 日志中看到显式的 gc 调用 见下文 我可以使用 XX DisableExplicitGC 删除调用 但我真的想知道哪个代码 库正在调用System gc 关于如何追踪它有任何提示吗 2011 05 30T12 21 48 23
  • 有哪些好的 java make 实用程序?

    我正在寻找一个用于构建大型 java 程序的 make 实用程序 我已经知道 ANT 但想看看还有什么可用的 理想情况下 它应该能够处理导致 GNU Make 混乱的 java gt class 包目录怪异现象 Win32 但跨平台是一个优
  • Rails:对渲染视图进行后处理

    某些 Rails 应用程序会生成一个视图 其中显示有关资源的一些信息 我想通过插件抑制一些信息 而不改变或覆盖视图 一种可能的方法是重写插件中的视图 但这可能会干扰其他插件 我不希望这样 有没有办法修改控制器 以便生成的视图在发送到客户端之
  • 如何检测flutter应用程序何时从后台返回?

    我想检测扑动应用程序何时从后台返回 在其他跨App开发的SDK中 当应用程序更改此状态时 通常会有一个监听器 flutter中有类似的东西吗 class AppState extends State
  • HTTP 标头中的 unicode 用户代理合法吗?

    我正在维护的一个应用程序将从 Web 日志中提取的用户代理加载到使用 latin1 字符集的 MySQL 表列中 有时 它无法加载如下所示的用户代理 Mozilla 5 0 I CPU iPhone OS 5 0 1 like Mac OS
  • UIImageView.appearance 覆盖 UISegmentedControl.appearance

    我一直在尝试使用外观代理 API 将一些默认颜色应用于某些控件 但遇到了问题 当我应用色调颜色时UISegmentedControl使用类似 UISegmentedControl appearance tintColor UIColor r
  • Qt:如何获取当前正在运行的窗口?

    我正在编写一个模拟按键的测试应用程序 我想了解每次按键后显示的窗口 这是代码块 std auto ptr
  • Colorbar - Matlab 中的轴刻度

    我正在使用下面的代码 d3 vals n datesmonth figure plot n d3 colormap jet 12 hold on plot n d3 b scatter n d3 RiskierInd filled caxi