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 に答える