精华内容
下载资源
问答
  • matlab 柱状图填充代码

    2016-12-06 22:16:12
    matlab柱状图填充代码
  • 画多类多组柱状堆叠1.准备数据clcclearcloseall%准备数据,第一类柱状堆叠是每列数据直接堆叠,第列数据是其中某几列加和后堆叠,要求在一张图里。A=rand(3,7);%3行7列的数据B=[A(:,1)+A(:,5)+A(:,6)+A(:,7),A(:...

    画多类多组柱状堆叠图

    1.

    准备数据

    clc

    clear

    close all

    %

    准备数据,第一类柱状堆叠图是每列数据直接堆叠,第列数据是其中某几列加和后堆

    叠,要求在一张图里。

    A=rand(3,7); %3

    7

    列的数据

    B=[A(:,1)+A(:,5)+A(:,6)+A(:,7),A(:,2)+A(:,3)+A(:,4)]; %

    第二类数据

    x=[0.5,1.5,2.5]; %

    第一类柱状堆叠图的

    x

    坐标

    x1=[1,2,3]; %

    第二类柱状堆叠图的

    x

    坐标

    loca={' ','xxxx','xxxx', ...

    'yyyy','yyyy', ...

    'zzzz','zzzz'}; %

    柱状堆叠图的

    x

    轴的标记

    2.

    画图(效果如上图所示)

    %

    画第一类柱状堆叠图

    b=bar(x,A,0.4,'stacked');

    set(gca,'XTickLabel',loca)

    hold on

    %

    画第二类柱状堆叠图

    b1=bar(x1,B,0.4,'stacked');

    %

    画第二类柱状堆叠图的颜色

    set(b1(1),'facecolor','r');%

    可以设置其他颜色

    set(b1(2),'facecolor','g') ;%

    可以设置其他颜色

    %

    画标签

    展开全文
  • 目前,SCI论文写作中数据的出方式我所知道的有三种,Excel出,Origin出,还有一种就是使用MATLAB代码出。我个人通常用的是第三种,偶尔也会去结合Excel出,此系列内容主要是总结对于MATLAB代码出的一点...

    目前,SCI论文写作中数据的出图方式我所知道的有三种,Excel出图,Origin出图,还有一种就是使用MATLAB代码出图。我个人通常用的是第三种,偶尔也会去结合Excel出图,此系列内容主要是总结对于MATLAB代码出图的一点心得,与诸君交流,也是一些基本技巧,锦上添花的事情就因人而异了。

    这里要说明一下,也算是一个小技巧,每一个图,对应一个文件夹,即这个文件夹只包含要出的这个图的数据和代码。因为有时候你的程序跑出来的数据可能需要几个小时,出图是一个慢慢修改的过程,修改频率很高,需要不断的去运行这个出图程序。

    本系列主要讲如下一些内容,

    1. 基础设置;

    2. 基本二维图,包含子图,局部放大图;

    3. 双坐标图;

    4. 三维图;

    5. 柱状图;

    6. 其余的一些补充及我个人的总结思考。

    1.基础设置

    这部分为出图部分的基础设计,

    clear
    clc
    load data.mat
    set(gcf,'position',[42,80,1200,730],'PaperPositionMode','auto');%设计图窗大小
    set(gcf,'ToolBar','none','ReSize','off'); %移除工具条
    set(gcf,'color','w');%设置图窗颜色为白色

    1.这里说一下MATLAB非常好用的一个函数,doc,个人认为要比help好用

    在命令行窗口输入

    doc set

    可以很好的学习这个set函数的使用

    2.对这个position的解释,这个针对对象是计算机的屏幕

    [a b c d],这四个位置的含义很简单,a,距离左边框的位置,b,距离下边框的位置,c,图长,d,图高。

    2.基本二位图绘制,以2X2图为例子

    准备一些函数,我自己先随便定义几个函数,我们就出这几个函数的图作为例子。

    t=0:0.1:1
    y1=@(t)2.*t.^2+1;
    y2=@(t)t.^3+2.^t;
    y3=@(t)cos(pi*t)+2;
    y4=@(t)tan(2*pi*t)+1;

    注:定义函数,个人比较喜欢这种形式,比较便捷

    2.1 我们准备画四个图,2x2

    subplot(2,2,1) %表示2x2第一个图

    p1 = plot(t,y1(t),'b--','LineWidth',1.5);
    hold on
    p2 = plot(t,y2(t),'color',[0 0.81 0.82],'LineWidth',1.5);
    set(gca,'Position',[0.06 0.7 0.4 0.27]);%第(1)个图的位置
    g = get(p1,'Parent');%对应p1所在的坐标轴
    set(g,'Linewidth',1.5,'FontSize',12,'FontName','Times New Roman','FontWeight','bold');
    %这里定义坐标轴的线宽,字体,字号,字体是否加粗
    ylabel('函数值','FontSize',12,'FontName','华文中宋');
    xlabel('\itt\rm(s\rm)','FontSize',14,'FontName','Times New Roman');%\it表示斜体,\rm表示正体

    subplot(2,2,2)
    b1 = plot(t,y1(t)-y2(t),'c--','LineWidth',1.5);
    set(gca,'Position',[0.56 0.7 0.4 0.27]);%第(2)个图的位置
    g = get(b1,'Parent');%对应p1所在的坐标轴
    set(g,'Linewidth',1.5,'FontSize',12,'FontName','Times New Roman','FontWeight','bold');
    ylabel('误差','FontSize',12,'FontName','华文中宋');
    xlabel('\itt\rm(s\rm)','FontSize',14,'FontName','Times New Roman');

    subplot(2,2,3)
    p3 = plot(t,y3(t),'r--','LineWidth',1.5);
    hold on
    p4 = plot(t,y4(t),'color',[0 0.3 0.82],'LineWidth',1.5);
    set(gca,'Position',[0.06 0.28 0.4 0.27]);%第(3)个图的位置
    g = get(p3,'Parent');%对应p1所在的坐标轴
    set(g,'Linewidth',1.5,'FontSize',12,'FontName','Times New Roman','FontWeight','bold');
    ylabel('函数值','FontSize',12,'FontName','华文中宋');
    xlabel('\itt\rm(s\rm)','FontSize',14,'FontName','Times New Roman');

    subplot(2,2,4)
    b2 = plot(t,y3(t)-y4(t),'g','LineWidth',1.5);
    set(gca,'Position',[0.56 0.28 0.4 0.27]);%第(4)个图的位置
    g = get(b2,'Parent');%对应p1所在的坐标轴
    set(g,'Linewidth',1.5,'FontSize',12,'FontName','Times New Roman','FontWeight','bold');
    ylabel('误差','FontSize',12,'FontName','华文中宋');
    xlabel('\itt\rm(s\rm)','FontSize',14,'FontName','Times New Roman');

    cd60a6b0def172ad529371f1fd7ae785.png

    使用上述代码可以实现绘出图1,相关代码涵义我已经在对应位置做了标注。

    注:

    1).关于颜色,线型的使用

    比如:

    p3 = plot(t,y3(t),'r--','LineWidth',1.5);
    hold on
    p4 = plot(t,y4(t),'color',[0 0.3 0.82],'LineWidth',1.5);

    r--表示红色虚线,'color',[0 0.3 0.82],如果你对matlab自带的颜色无感,这段代码的意思就是我用RGB去定义颜色,这三个数是0~1之间的数,1对照255,如果你对颜色搭配比较考究的话,就可以去选你自己喜欢的配色了。

    2).子图位置的调试

    对比基础设计部分,位置的四个参数对应的是figure图窗的位置。

    2.2 加个图例

    图例的作用就是给读者看的,这些图代表什么意思。

    h1=legend([p1 p2 p3 p4 b1 b2],'\fontname{Times New Roman}y_1','\fontname{Times New Roman}y_2','\fontname{Times New Roman}y_3',...
    '\fontname{Times New Roman}y_4','\fontname{华文中宋}误差1','\fontname{华文中宋}误差2','Orientation','horizontal');
    set(h1,'Linewidth',1.5,'FontSize',13,'FontWeight','bold');
    set(h1,'position',[0.35,0.03,0.2,0.1]);%legend位置

    注:

    1).如果没有中文注释的话,可以这么写

    h1=legend([p1 p2 p3 p4 b1 b2],'y1','y2','y3','y4','error1','error2','Orientation','horizontal');
    %'Orientation','horizontal',表示图例横放
    set(h1,'Linewidth',1.5,'FontSize',13,'FontName','Times New Roman','FontWeight','bold');
    set(h1,'position',[0.35,0.03,0.2,0.1]);%legend位置

    2).legend的其它使用技巧,doc legend

    f845a352b00747bff74719a0288511ff.png

    2.3 局部放大的应用

    有时候我们需要增加一个局部放大加以说明,观察局部的位置

    %(221)图增加局部放大
    axes('position',[0.095,0.85,0.12,0.1]);%局部放大图位置
    p1 = plot(t,y1(t),'b--','LineWidth',1.5);
    hold on
    p2 = plot(t,y2(t),'color',[0 0.81 0.82],'LineWidth',1.5);
    axis([0.67 0.7 1.9 2]);%坐标范围设置
    set(gca,'YTick',1.9:0.05:2,'FontName','Times New Roman','FontSize',10,'FontWeight','bold');%y坐标设置
    set(gca,'XTick',0.67:0.01:0.7,'FontName','Times New Roman','FontSize',10,'FontWeight','bold');%x坐标设置
    set(gca,'LineWidth',1.5);

    4f75926eefa07be2746223951ebfbaa3.png

    如果要对四个子图标注为(a)(b)(c)(d),用text函数


    其余部分,有时间再更新。

    展开全文
  • 这个小代码用于matlab柱状图显示比例及数值, 函数如下: function myhist(x) % myhist Codeby SimonLiang % Email:idignew@126.com % 用于显示柱状图比例及具体数值 h=histogram(x); hold on; %...

    这个小代码用于matlab柱状图显示比例及数值,

     

    函数如下:

    function myhist(x)
    % myhist Codeby SimonLiang
    % Email:idignew@126.com
    % 用于显示柱状图比例及具体数值
    
    h=histogram(x);
    
    hold on;
    
    %显示柱状图数值
    hBin=h.BinEdges(1:end-1)+h.BinWidth/2;
    text(hBin,h.Values+max(h.Values)/25,num2cell(h.Values));
    
    %计算百分比
    Hpercent=round(h.Values/sum(h.Values)*100);
    
    %加入百分号
    Hpercent2=num2cell(Hpercent);
    for i=1: length(Hpercent)
        Hpercent2(i)={[num2str(Hpercent(i)),'%']};
    end
    text(hBin,h.Values+max(h.Values)/15,Hpercent2);%显示百分比
    
    %显示标题
    title(['TotalCounts=',num2str(sum(h.Values))]);
    
    hold off
    end
    
    
    

     

    调用范例:

    x=randi([1,100],1,50);
    myhist(x);
    

     

    效果如下:

     

    转载于:https://www.cnblogs.com/idignew/p/6632408.html

    展开全文
  • 1、下载填充函数:applyhatch . 2、有四种选择: applyhatch ,applyhatch plus ,applyhatch_plusC,和Hatch fill patterns plus Color & Invert,个人感觉后两种更好一些。 3、下...

    1、下载填充函数:applyhatch .   

    2、有四种选择: applyhatchapplyhatch plus , applyhatch_plusC , 和 Hatch fill patterns plus Color & Invert,个人感觉后两种更好一些。

    3、下载以后,放在自己存放m文件的地方,就可以在其他m文件中调用applyhatch***函数了。

    文件注释里都有例子。


    转载于:https://my.oschina.net/abcijkxyz/blog/720456

    展开全文
  • 学习如何让柱状图和折线图完美结合。操作步骤:1 首先对增长率进行升序排列,排列后的数据如上。2 选中A2:C6,插入二维柱形图,选择簇状柱形图,界面如下:3选中任何一个柱形,右键——更改系列图表类型。增长率改...
  • MATLAB柱状图去掉黑色边框

    千次阅读 2019-03-18 11:27:43
    MATLAB生成柱状图后,感觉柱图和图例的黑色边框很影响美观,如下图, 不如这样的图更清爽一些, 设置方法如下: b=bar(data1); set(b,'edgecolor','none'); h = legend('SS', 'SS+EB100', 'ours'); set(h,...
  • matlab柱状图画法

    2019-07-16 11:13:00
    %在柱状图上方显示数值 for i = 1:length(x) text(t(i),x(i)+1800,num2str(x(i)),'VerticalAlignment','middle','HorizontalAlignment','center','FontSize',fontsize); end 转载于:...
  • ![图片说明](https://img-ask.csdn.net/upload/201905/19/1558272758_481269.png) 请问这样的图怎么画呀。 如何做到每五个一组,每组内有五中不同颜色的柱状图
  • 通常,水平的称为条形图,垂直的称为柱状图,本文中不加区分。二维条形图bar函数沿x轴分布条形图。矩阵同一行中的元素被分组在一起。例如,如果矩阵具有五行三列,则bar沿x轴显示五组三栏。第一组条形图表示Y的第一...
  • MATLAB柱状图画法(详细)

    千次阅读 2020-03-20 12:19:16
    首先先给一张柱状图,请注意,A B C三个对比的数据,是分别对应一个数组的每一列, 然后贴代码 figure(1) axes2=axes('position',[0.1,0.1,0.86,0.8]); %这个是figure里面图的位置和大小,分别为离下边,左边的...
  • 有时候表展示的数据更加清晰,有时候绘制的形状更加直观。最常用的办公工具Excel就是不错的选择,但是自动化比较难。现在数据分析常用的编程语言是python,所以推荐一款用来绘制交互的工具——pyecharts。...
  • matlab柱状图填充物

    千次阅读 2016-12-06 22:19:50
    matlab画图
  • 今天需要出一个不同颜色的柱状图,看了一下博客,首先使用了matlab中的children,但是发现颜色没有变化。 后来从另外的博客中发现,matalb2014以后的版本这个功能不能用了,what?只能用bar。 好吧,用bar一遍一遍...
  • matlab柱状图添加条纹 hatchfill

    千次阅读 2019-03-21 13:53:38
    使用applyhatch_pluscolor包,下载地址:applyhatch_pluscolor代码包。 h = bar(rand(3,4)); fH = gcf; colormap(cool(6)); legend('Apple', 'Orange', 'Banana','Melon');...tH = title('Brandon''s applyhatch');...
  • 直接上代码 b=bar(1:10); alpha(0.1) alpha-向坐标区的对象添加透明度,值越小越透明 下有两做example: 参考资料: bar画的怎么设置颜色为透明?
  • 前些日子,在朋友圈看到一张。当时只是单纯觉得看起来蛮舒服,便顺手保存了下来,也并没有想怎样。之后读了一篇文章,作者说,同样是从黄色到紫色的过渡,淡紫到深黄,与淡黄到深紫,理论上感觉应该是相似的。但...
  • 悬置的布置往往受到发动机舱布置的限制,安装位置可能会...本文就并利用Matlab编制了悬置优化程序,通过ISIGHT软件和Matlab软件的集成,利用ISIGHT软件的全局优化方法——多目标遗传算法进行确定性优化设计;在确定性...
  • matlab 柱状图显示种类名字

    千次阅读 2012-09-26 13:27:11
    想用matlab打印像excel那种bar chat下面显示种类名字的,不过matlab默认都是,1,2,3,4这样的数字,添加种类名字还比较折腾,后来发现一个比较简单的方法,相当于直接把1,2,3这样的数字给替换掉,而画的时候还是1,2,3...
  • 直接上成: 代码很简单: clear clc close all X = [8,1,9,3,6,9,3,5,4 3,2,9,2,6,4,9,5,1]; X = X'; color_matrix = [1,1,1 0.5,0.5,0.5]; %%用矩阵存储RGB三色数据,也可以直接赋值 h1 = bar(X(:,1:2),1); ...
  • 在这篇文章中,我们将介绍5种超越柱状图和方块图的可视化技术,这些技术可以使你的数据加美观和有效。我们将使用python中的Plotly图形库,它能够以最小的工作量提供动画和交互式绘图。Plotly的优点是什么?绘图是...
  • matlab柱状图总结--以代码为例

    千次阅读 2018-07-13 16:28:01
    Value = [67.0845281253 138.424116254 1.99445488457 2.16729312933;67.0833981873 85.4818266494 2.22367557161 1.1568554074];bar(Value)set(gca,'XTicklabel',{'Dergree = 2','Degree = 3'});...
  • 更丧心病狂的是,有些程序员不论“出身”,都鄙视MATLAB。我,MATLAB 最强拥趸,不服!诚信推荐MATLAB,吃下这颗安利,你的工作效率将提升10倍。MATLAB,又名矩阵实验室,是一种高效的商业数据软件,集数值分析、...
  • 对比功能:程式可直接输入.DXF文件,在影像测量区实现工件实物放大影像与标准设计作直观的测量比对。 13.绘图:可将实时影像中的实际工件外形进行描绘,形成完整的工程,绘图方式和AutoCAD相似。 14.报表格式:...
  • 一为例说明此方法,精髓在于工件表面中心位置为例采用双边对刀方式,分别向x,y向对刀和向Z向对刀。y向对刀的目的是为了测出坐标值。1.将工件通过夹具装在工作台上,装夹时,工件的四个侧面都应留出对刀的位置。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 460
精华内容 184
关键字:

matlab柱状图

matlab 订阅