1

我正在尝试使用颜色条在 matlab 中绘制 3D 曲面图。

我想知道如何

  1. 标记颜色条的标题

  2. 更改轴刻度标签

我的代码的重要部分是

number_panels = 1:100:500;
number_turbines = 0;
number_batteries = 0:300:1700;

for idx_number_panels = 1:length(number_panels) 

for idx_number_turbines = 1:length(number_turbines) 

    for idx_number_batteries = 1:length(number_batteries) 

        for h=2:3 %# hours

A = squeeze(total_annual_cost)
B = squeeze(total_renewables_penetration)

figure;
surface(A,B)

在此处输入图像描述 我正在尝试将 x 和 y 轴刻度从 for 循环的间隔更改为代表每个间隔的实际数字。

我似乎在文档中找不到上述任何内容。

4

1 回答 1

2

以下代码显示如何更改 Xticks、Yticks 以及如何将标签添加到颜色条的值:

clear all
close all
clc

h = surface(peaks)
colorbar('YTickLabel',...           % set labels to the colorbar
    {'Freezing','Cold','Cool','Neutral',...
     'Warm','Hot','Burning','Nuclear'})
view(-35,45)

number_panels = 0:5:50;
number_batteries = 0:15:50;

set(gca,'XTick',number_panels)      % set Xticks
set(gca,'YTick',number_batteries )  % set Yticks
grid on

在此处输入图像描述

使用此代码,您可以更改第一个 YTickLabel 以设置颜色栏标题(嗯,类似的东西):

clear all
close all
clc

number_panels = 0:5:50;
number_batteries = 0:15:50;

h = surface(peaks);
chandle = colorbar;

current_colorbar_labels = get(chandle,'YTickLabel');
current_zticks = get(chandle,'YTick');
aux = cellstr(current_colorbar_labels);
aux{end} = 'Title';
set(chandle,'YTickLabel',aux);
view(-35,45)

set(gca,'XTick',number_panels)      % set Xticks
set(gca,'YTick',number_batteries )  % set Yticks
set(gca,'ZTick',current_zticks )  % set Yticks
grid on

在此处输入图像描述

我的颜色条命令代码基于: http: //www.mathworks.es/es/help/matlab/ref/colorbar.html

希望这会有所帮助,我会尝试将标题添加到颜色栏...

于 2012-10-15T21:11:22.877 回答