function [rgb, bank] = JiaxinColor(name, varargin)
            
    ip = inputParser();
    % 将bank里的颜色以名称来排序
    ip.addParameter('sort_color', true);
    % 选择特定行的颜色
    ip.addParameter('sel', []);
    % 颜色的长度
    ip.addParameter('len', []);

    ip.parse(varargin{:});
    ip = ip.Results;

    % import colorbank
    bank = load('JiaxinColor.mat');

    % 排序颜色
    if ip.sort_color
        color_name = {};
        for i = 1:length(bank.color)
            color_name = [color_name, bank.color{i}.name];
        end
        [~, idx] = sort(color_name);

        bank.color = bank.color(idx);
    end
    
    rgb = [];
    % in default, one argin is the name of the color
    if nargin > 0
        for i = 1:length(bank.color)
            if strcmp(name, bank.color{i}.name)
                rgb = bank.color{i}.rgb;
                break
            end
        end
    end

    if ~isempty(ip.len)
        rgb = interp1(linspace(0,1,size(rgb, 1)), rgb, linspace(0,1,ip.len), 'spline');
    end

    if ~isempty(ip.sel)
        rgb = rgb(ip.sel, :);
    end

%         % show the names of all color stored in the bank
%         function names = GetAllColorNames(obj)
%             names = cell(length(obj.bank.color), 1);
%             for i = 1:length(names)
%                 names{i} = obj.bank.color{i}.name;
%             end
%             names = sort(names);
%         end
%     end
% 
% end

% function C = MyColor(name, varargin)
% 
%     
% 
% end

% function C = BrewerSetPaired