统计图柱形图绘制方法

news2025/1/20 1:53:42

统计图柱形图绘制方法
常用的统计图有条形图、柱形图、折线图、曲线图、饼图、环形图、扇形图。
前几类图比较容易绘制,饼图环形图绘制较难。
今提供条形图和柱形图的绘制方法,附加环形图和艺术环图的绘制方法供参考。

本方法采用C语言的最基本功能:
( 1) 绘图功能画线,画圆,画长方形。
(2) 界面美工设计,界面文字打印输出。
代码中有详细的注释,通俗易懂,一看就会。

下面是绘制柱形图、条形图的代码:
//变量: 可设置成全局变量或私有变量
Canvas cs ;     //画布,绘制图表载体
float pi=3.1415926535 ;
float a ;            //三角函数 sin (a), cos (a), 
float r ;             //圆半径 radius
int i, j, n ;
float x0,y0,x1,y1 ;  //作图坐标
float dx,dy ;             //中心坐标
string ss, ss1, ss2 ;         //打印文字
 int p[6] ;        //set data or  input  data
double pn ;   //显示数据
 

8fdc583efab340b194f4fc497835d129.png
//*************************  
BarChart4 (){    //条形图
      cs.ClearDraw (0,src);   //清屏
      clearOutput();
      cs.SetFillMode (1);//0不填色,1填色
      cs.SetColor (255,250,250,250);
      cs.DrawRect (0,4,720,600);   //back board
      cs.SetColor (255,140,140,140);
      cs.DrawRect (24,24,706,586);   //back      
      cs.SetColor (255,250,250,250);
      cs.DrawRect (20,20,700,580);   //back  

      cs.SetFillMode (0);//0不填色,1填色
      cs.SetColor (255,0,0,240);
      cs.DrawRect (20,20,700,580);   //框线
      cs.DrawRect (24,24,696,576);   //框线

      cs.SetFillMode (1);//0不填色,1填色
      cs.SetStrokeWidth(1);
      for (j=0; j<=9 ; j++){   //draw grid
      for (i=0; i<=5 ; i++){   
          dx=j*50+150 ;
          dy=i*50+100 ;
          cs.SetColor(255,220,220,220);
          cs.DrawRect (dx,dy,dx+49,dy+49);  }  }  //grid
      for (i=0; i<=10 ; i++){   
          dx=i*50+150 ;
          cs.SetColor(255,250,0,0);
          cs.DrawRect (dx-3,403,dx,409); }  //标线

      cs.SetColor(255,250,0,0);
      cs.DrawRect (50,400,670,403);   //X线
      cs.DrawRect (147,90,150,400);   //Y线
          
      cs.SetTextStyle (0);     //画标尺
      cs.SetTextSize (18);
      ss=" 0         25       50        75      100      125" ;
      ss1=" 150     175     200     225     250" ;
      cs.DrawText (ss,140,425) ;
      cs.DrawText (ss1,430,425) ;   //standard

      cs.SetTextSize (20);
      cs.DrawText ("年份  量比",55,390) ;
      cs.SetTextSize (24);
      cs.DrawText ("Bar Chart 📊",545,60) ;

      cs.DrawText ("计划           完成 ", 120,70) ;   
          cs.SetColor(255,250,200,100);
       cs.DrawRect (178,48,222,72) ;  
           cs.SetColor(255,0,190,190);
       cs.DrawRect (180,50,220,70) ;  
           cs.SetColor(255,250,0,0) ;    
       cs.DrawCircle (100,60,9) ;  
       cs.DrawRect (80,58,100,62) ;  

 //依数据绘出条形图
 int yy ;       //打印年份
   p[1]=150; p[2]=170; p[3]=165; p[4]=125; p[5]=210;
          cs.SetTextSize (22);
    for (n=1; n<=5 ; n++){     //draw Bar Chart
           cs.SetFillMode (1);//0不填色,1填色
           cs.SetColor(255,0,190,190);
           dx=150 ;  dy=n*50+100 ;
           m=p[n]*2;
        cs.DrawRect (dx,dy-12,dx+m,dy+12) ;     
            ss=intToString (p[n]) ;
        cs.DrawText (ss,dx+m-35,dy-14) ;   //p(n)
             yy=2018+n ;
            ss1=intToString (yy) ;
            cs.SetColor(255,0,100,0);
        cs.DrawText (ss1, 85,dy+7) ;   //SD year
            cs.SetColor(255,250,20,100);
            cs.SetFillMode (0);//0不填色,1填色
        cs.DrawRect (dx,dy-12,dx+m,dy+12) ;       }

  //绘出标线: 计划
  p[1]=140; p[2]=150; p[3]=160; p[4]=170; p[5]=180;
    for (n=1; n<=5 ; n++){     //draw Line Chart
          cs.SetColor(255,250,0,0);   //折线
          cs.SetFillMode (1);//0不填色,1填色
          cs.SetStrokeWidth(2);
          dx=150 ;  dy=n*50+100 ;
          m=p[n]*2 ;  
      cs.DrawCircle (dx+m,dy,9) ; 
      cs.DrawRect (dx+m,dy-2,150,dy+2) ;
            ss1=intToString (p[n]) ;
      cs.DrawText (ss1,dx+m+10, dy+7) ;   }//data

//draw title 统计图题标
      cs.SetFillMode (1);//0不填色,1填色
       cs.SetTextSize (50);
       cs.SetTextStyle (1);
       cs.SetStrokeWidth(1);
          ss="统计图  -  条形图" ;
      cs.SetColor(255,50,120,20);      //立体字
           cs.DrawText (ss,154,524);    //阴影
      cs.SetColor(255,0,250,0);
           cs.DrawText (ss,150,520);    //本字
      cs.SetFillMode (0);//0不填色,1填色
      cs.SetColor(255,250,150,0);
           cs.DrawText (ss,150,520);    //框线
       cs.Update ();
}//barChart4 ()

69179a23b0cf47dd81afdaeb66961c3e.png

 

//**************************
BarChart5 ( ){   // 柱状图绘制方法
 int yy ;   //打印年份
      cs.ClearDraw (0,src);   //清屏
      clearOutput();
      cs.SetFillMode (1);//0不填色,1填色
      cs.SetColor (255,250,250,250);
      cs.DrawRect (0,4,720,600);   //back board
      cs.SetColor (255,140,140,140);
      cs.DrawRect (24,24,706,586);   //back      
      cs.SetColor (255,250,250,250);
      cs.DrawRect (20,20,700,580);   //back 

      cs.SetFillMode (0);//0不填色,1填色
      cs.SetColor (255,0,0,240);
      cs.DrawRect (20,20,700,580);   //框线
      cs.DrawRect (24,24,696,576);   //框线

      cs.SetFillMode (1);//0不填色,1填色
      cs.SetStrokeWidth(1);
    //  cs.SetColor(255,220,220,220);
      for (j=0; j<=9 ; j++){   
      for (i=0; i<=5 ; i++){   
          dx=j*50+150 ;
          dy=i*50+100 ;
          cs.SetColor(255,220,0,220);
      cs.DrawRect(138,dy-1,147,dy+1); 
          cs.SetColor(255,220,220,220);
      cs.DrawRect(dx,dy,dx+49,dy+49);  }  }//grid
          cs.SetColor(255,250,0,0);
      cs.DrawRect (60,400,670,403);   //X线
      cs.DrawRect (147,90,150,400);   //Y线
          
          cs.SetTextStyle (0);     //画标尺
          cs.SetTextSize (20);
      cs.DrawText (" 50",93,358) ;
      cs.DrawText ("100",90,308) ;
      cs.DrawText ("150",90,258) ;
      cs.DrawText ("200",90,208) ;
      cs.DrawText ("250",90,158) ;
      cs.DrawText ("300",90,108) ;
          cs.SetTextSize (24);
      cs.DrawText ("量比",85,396) ;
   
         cs.SetTextSize (24);
         cs.SetColor(255,0,60,0);
      cs.DrawText ("年份 >",85,428) ;
      cs.DrawText ("Bar Chart 📊",510,70) ;

      cs.DrawText ("计划           完成 ", 120,70) ;   
          cs.SetColor(255,250,200,100);
       cs.DrawRect (178,48,222,72) ;  
           cs.SetColor(255,0,120,0);
       cs.DrawRect (180,50,220,70) ;  
           cs.SetColor(255,250,0,0) ;    
       cs.DrawCircle (100,60,9) ;  
       cs.DrawRect (80,58,100,62) ;  

//依数据绘出条形图
  p[0]=0 ;  x2=150 ;  y2=300 ;
  p[1]=150; p[2]=250; p[3]=290; p[4]=265; p[5]=185;
    for (n=1; n<=5 ; n++){     //draw Bar Chart
          cs.SetFillMode (1);//0不填色,1填色
          cs.SetStrokeWidth(2);
          dx=n*100+100 ;  dy=400 ;
          m=p[n] ;  
          cs.SetColor(255,0,120,0);
      cs.DrawRect (dx-20,400-m,dx+20,dy) ;   //bar
           cs.SetTextSize (20);
           yy=2018+n ;
           ss1=intToString (yy) ;
      cs.DrawText (ss1,dx-22,dy+25) ;   //year
            x3=n*100+100 ;        //完成折线
            y3=400-p[n] ;
       cs.DrawCircle (x3,y3, 7) ;    //完成折线
       cs.DrawLine (x3,y3, x2,y2) ;    //完成折线
             x2=x3 ;   y2=y3 ;    
         cs.SetTextSize (18);
          cs.SetColor(255,250,230,0);
          ss=intToString (p[n]) ;
       cs.DrawText (ss,dx-15,dy-m+20) ;   //data
 
           cs.SetColor(255,250,200,100);   //框线
           cs.SetFillMode (0);//0不填色,1填色
        cs.DrawRect (dx-20,400-m,dx+20,dy) ;  
                 }

  //绘出折线图 计划
  p[1]=160; p[2]=180; p[3]=200; p[4]=220; p[5]=240;
          x0=150 ;  y0=250 ;    //起点坐标值
    for (n=1; n<=5 ; n++){     //draw Line Chart
          cs.SetColor(255,250,0,0);   //折线
          cs.SetFillMode (1);//0不填色,1填色
          cs.SetStrokeWidth(2);
          dx=n*100+100 ;  dy=400 ;
          m=p[n] ;  
      cs.DrawCircle (dx,dy-m,9) ; 
      cs.DrawLine (dx,dy-m,dx,400) ;
           ss=intToString (p[n]) ;
      cs.DrawText (ss,dx+10,dy-m+6) ;   //data
            x1=n*100+100 ;        //计划折线
            y1=400-p[n] ;
      cs.DrawLine (x0,y0, x1,y1) ;    //计划折线
             x0=x1 ;   y0=y1 ;     //值转换
               } 

//draw title 统计图题标
      cs.SetFillMode (1);//0不填色,1填色
       cs.SetTextSize (50);
       cs.SetTextStyle (1);
       cs.SetStrokeWidth(1);
          ss="统计图  -  柱形图" ;
      cs.SetColor(255,50,120,20);      //立体字
           cs.DrawText (ss,164,524);    //阴影
      cs.SetColor(255,0,250,0);
           cs.DrawText (ss,160,520);    //本字
      cs.SetFillMode (0);//0不填色,1填色
      cs.SetColor(255,250,150,0);
           cs.DrawText (ss,160,520);    //框线
       cs.Update ();
}//BarChart5 ()

befb55c5d3af49feb2a4dd5b4774fd9a.png

//****附加:环形图 (带色块分隔线 )****      
PieGraph2 (){  //环形图(带色块分隔线)
      cs.ClearDraw (0,src);   //清屏
      clearOutput();
      cs.SetFillMode (1);//0不填色,1填色
      cs.SetColor (255,250,250,250);
      cs.DrawRect (0,4,720,600);   //back board
      cs.SetColor (255,140,140,140);
      cs.DrawRect (24,24,706,586);   //back      
      cs.SetColor (255,230,240,250);
      cs.DrawRect (20,20,700,580);   //back 

      cs.SetFillMode (0);//0不填色,1填色
      cs.SetColor (255,0,0,240);
      cs.DrawRect (20,20,700,580);   //框线
      cs.DrawRect (24,24,696,576);   //框线

      cs.SetFillMode (1);//0不填色,1填色
      cs.SetStrokeWidth(2);
          cs.SetTextSize (30);      //题标
          cs.SetColor (255,0,0,250);
      cs.DrawText ("PieGraph Ⓜ",510,70) ;
          dx=360 ; dy=300 ;  
      cs.SetColor(255,250,240,240);
      cs.DrawCircle(dx,dy,135);    //center
 //绘制图表
      cs.SetTextStyle (0);
      cs.SetTextSize (18);
       r=120;
       p[0]=-180;  
  p[1]=150;  p[2]=170;  p[3]=156;  p[4]=152; p[5]=92;
       k[0]=-180;  
       k[1]=k[0]+p[1];
       k[2]=k[1]+p[2];
       k[3]=k[2]+p[3];
       k[4]=k[3]+p[4];
       k[5]=k[4]+p[5];
          
     for (n=1; n<=5 ; n++){   //data=5
       for (i= k[n-1]; i<=k[n]; i++){  //draw Piegraph
       if (n==1) cs.SetColor(255,0,250,0);
       if (n==2) cs.SetColor(255,255,205,0);
       if (n==3) cs.SetColor(255,250,0,0);
       if (n==4) cs.SetColor(255,250,50,220);
       if (n==5) cs.SetColor(255,0,150,220);
            a=pi/360*((k[n-1]+k[n])/2) ;   //这是第二种画法
           x1=(float)(5*cos (a))+dx ;     
           y1=(float)(5*sin (a))+dy ;         
             a=pi/360*i ;     
           x0=(float)(r*cos (a))+x1 ;     //r=radius
           y0=(float)(r*sin (a))+y1 ;
           cs.DrawLine (x1,y1,x0,y0);     //draw out
      cs.DrawRect (100,n*40+20,195,n*40+50); //色标

      //** print data as "28.25%"
           s=intToString (p[n]);
           cs.DrawText (s, 60,40+n*40);
           pn=p[n]*10000/720 ;    //扩大100
           pn=pn/100 ;      //保留2位小数
           ss1=doubleToString (pn)+"%" ;
           cs.SetColor(255,250,250,250);
           cs.DrawText (ss1,120,40+n*40);
       cs.SetColor(255,0,0,150);    //图上标( n% )
            ma=pi/360*((k[n-1]+k[n])/2) ;
       x1=(float)((r-45)*cos (ma))+dx-33;     
       y1=(float)((r-35)*sin (ma))+dy ;
            cs.DrawText (ss1,x1,y1);
 
       //** 中心加圆是环图,不加圆是饼图
         cs.SetColor(255,250,240,240);
         cs.DrawCircle(dx,dy,45);    //中心加圆是环图
             cs.Update ();      }   
         cs.DrawLine (dx,dy,x0,y0);   } //色块有分隔线

 //打印统计图题标 
      cs.SetFillMode (1);//0不填色,1填色
      cs.SetTextSize (60);
      cs.SetTextStyle (1);
      cs.SetStrokeWidth(1);
           ss="统计图  -  环图" ;
      cs.SetColor(255,50,120,20);      //立体字
           cs.DrawText (ss,154,524);    //阴影
      cs.SetColor(255,0,250,0);
           cs.DrawText (ss,150,520);    //本字
      cs.SetFillMode (0);//0不填色,1填色
      cs.SetColor(255,250,150,0);
           cs.DrawText (ss,150,520);    //框线
       cs.Update ();
}//PieGraph2 ()

 

c7519df9d6bb4381aa366211be09dfdb.png
//****附加:艺术环图绘制方法 **********

PieGraph1 (){  
 //环形图:很有艺术感的图表,也可称C形图
      cs.ClearDraw (0,src);   //清屏(cls), clear screen
      clearOutput();      //清除 print  字串
      cs.SetFillMode (1);//0不填色,1填色
      cs.SetColor (255,250,250,250);
      cs.DrawRect (0,4,720,600);   //画图表底板
      cs.SetColor (255,140,140,140);
      cs.DrawRect (24,24,706,586);   //back      
      cs.SetColor (255,230,240,250);
      cs.DrawRect (20,20,700,580);   //back 
      cs.SetFillMode (0);   //0不填色,1填色
      cs.SetColor (255,0,0,240);
      cs.DrawRect (20,20,700,580);   //框线
      cs.DrawRect (24,24,696,576);   //框线

      cs.SetFillMode (1);   //0不填色,1填色
      cs.SetTextStyle (1);
      cs.SetStrokeWidth(2);
          cs.SetTextSize (30);      //题标
          cs.SetColor (255,0,0,250);
      cs.DrawText ("PieGraph Ⓜ",510,70) ;
            dx=360 ; dy=260 ;    //图形中心点
      cs.SetColor(255,250,250,250);
      cs.DrawCircle(dx,dy,185);    //center 图案底色
      cs.SetColor(255,250,200,200);
      cs.DrawLine (dx-200,dy,dx+200,dy); //十字线
      cs.DrawLine (dx,dy-200,dx,dy+200); //色标

      cs.SetTextStyle (1);  //粗体字
      cs.SetTextSize (22);
      cs.SetColor(255,0,0,250);
      cs.DrawText ("Group A",35,98);
      cs.DrawText ("Group B",35,138);
      cs.DrawText ("Group C",35,178);
           setn=1 ;
           p[1]=87;  p[2]=65;  p[3]=76;  //intput data    
     for (n=1; n<=3 ; n++){   //data=3
           r=200-n*43 ;     //r=radius
           pn=p[n]*72/10+180;
              print "pn= ",pn;
     for (i=180 ; i<=pn; i++){  //画图案 颜色可自定
           a=pi/360*i ;  
       if (n==1) cs.SetColor(255,180,220,250); //设色
       if (n==2) cs.SetColor(255,80,140,250);
       if (n==3) cs.SetColor(255,50,180,250);
           x0=(float)(r*cos (a))+dx;     //r=radius
           y0=(float)(- r*sin (a))+dy;  
       cs.DrawCircle (152,n*40+50,20); //色标
       cs.DrawCircle (140,n*40+50,20); //色标
       cs.DrawCircle (x0,y0,20) ;  //绘出图案
 
      //** print data as "87%",  加"%"
      //input data 转换,量和百分比转换,定标500=100%
             ss1=intToString (p[n])+"%" ;          
             ss2=intToString (p[n]*5) ;
          cs.SetTextSize (20);
       cs.DrawText (ss2,dx+25,dy-193+n*43);

            cs.SetColor(255,250,250,250);
       cs.DrawText (ss2,130,n*40+56);
       cs.DrawText (ss1,dx-30,dy-193+n*43);
      //动画式显示效果:逐点更新绘出
           cs.Update ();      }    }
 
  //打印统计图题标 
       cs.SetFillMode (1);   //0不填色,1填色
       cs.SetTextSize (60);
       cs.SetTextStyle (1);
       cs.SetStrokeWidth(1);
           ss="统计图  -  环形图" ;
       cs.SetColor(255,50,120,20);      //立体字
           cs.DrawText (ss,124,524);    //阴影
       cs.SetColor(255,0,200,250);
           cs.DrawText (ss,120,520);    //本字
       cs.SetFillMode (0);   //0不填色,1填色
       cs.SetColor(255,250,0,0);
           cs.DrawText (ss,120,520);    //框线
        cs.Update ();
}//PieGraph1 ()


//**** END *****************

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1455284.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue3快速上手(七) ref和reactive对比

一、ref和reactive对比 表格形式更加直观吧&#xff1a; 项目refreactive是否支持基本类型支持不支持是否支持对象类型支持支持对象类型是否支持属性直接赋值不支持&#xff0c;需要.value支持是否支持直接重新分配对象支持&#xff0c;因为操作的.value不支持&#xff0c;需…

Shiro-05-shiro 基础知识补充密码学+哈希散列

密码学 密码术是隐藏或混淆数据的过程&#xff0c;因此窥探眼睛无法理解它。 Shiro的加密目标是简化JDK的加密支持并使之可用。 需要特别注意的是&#xff0c;密码通常不是特定于主题的&#xff0c;因此Shiro API的其中一个领域不是特定于主题的。 即使未使用“主题”&…

vue3-渲染机制

渲染机制 Vue 是如何将一份模板转换为真实的 DOM 节点的&#xff0c;又是如何高效地更新这些节点的呢&#xff1f;我们接下来就将尝试通过深入研究 Vue 的内部渲染机制来解释这些问题。 虚拟 DOM 你可能已经听说过“虚拟 DOM”的概念了&#xff0c;Vue 的渲染系统正是基于这…

基于JAVA(springboot)后台微信自我健康管理小程序系统设计与实现

博主介绍&#xff1a;黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者&#xff0c;CSDN博客专家&#xff0c;在线教育专家&#xff0c;CSDN钻石讲师&#xff1b;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程&#xff…

Javaweb基础-前端工程化学习笔记

前端工程化&#xff1a; 一.ES6 变量与模版字符串 let 和var的差别&#xff1a; <script>//1. let只有在当前代码块有效代码块. 代码块、函数、全局{let a 1var b 2} console.log(a); // a is not defined 花括号外面无法访问console.log(b); // 可以正常输出…

DTAN: Diffusion-based Text Attention Network for medical imagesegmentation

DTAN:基于扩散的医学图像分割文本关注网络 摘要 在当今时代&#xff0c;扩散模型已经成为医学图像分割领域的一股开创性力量。在此背景下&#xff0c;我们引入了弥散文本注意网络(Diffusion text - attention Network, DTAN)&#xff0c;这是一个开创性的分割框架&#xff0c…

【c++ debug】记一次protobuf结构相关的coredump问题

文章目录 1. 问题现象2. 问题描述3. 问题分析4. 问题根因5. 问题修复6. 补充&#xff1a;类成员变量定义为引用类型 1. 问题现象 其中curr_lanes是一个目标上一帧的当前车道current_lanes_curr_lane是lane_id对应的LaneInfo信息现象&#xff1a;在lane_info->lane().success…

《隐私计算简易速速上手小册》第5章:隐私计算在不同行业的应用(2024 最新版)

文章目录 5.1 金融行业5.1.1 基础知识5.1.2 重点案例:欺诈检测系统5.1.3 拓展案例 1:信用评分模型5.1.4 拓展案例 2:市场趋势分析5.2 医疗保健行业5.2.1 基础知识5.2.2 重点案例:匿名化患者数据分析5.2.3 拓展案例 1:使用差分隐私进行临床试验数据分析5.2.4 拓展案例 2:安…

【机构vip教程】​python(1):python正则表达式匹配指定的字符开头和指定的字符结束

一&#xff0c;使用python的re.findall函数&#xff0c;匹配指定的字符开头和指定的字符结束 代码示例&#xff1a; 1 import re 2 # re.findall函数;匹配指定的字符串开头和指定的字符串结尾(前后不包含指定的字符串) 3 str01 hello word 4 str02 re.findall((?<e).*?…

大模型LLM训练显存消耗详解

参考论文&#xff1a;ZeRO: Memory Optimizations Toward Training Trillion Parameter Models 大模型的显存消耗一直都是面试常见的问题&#xff0c;这次我就彻彻底底的根据论文ZeRO中的调研和分析做一次分析 显存消耗的两个部分&#xff1a;Model States&#xff08;跟模型的…

【机构vip教程】Android SDK手机测试环境搭建

Android SDK 的安装和环境变量的配置 前置条件&#xff1a;需已安装 jdk1.8及 以上版本 1、下载Android SDK&#xff0c;解压后即可&#xff08;全英文路径&#xff09;&#xff1b;下载地址&#xff1a;http://tools.android-studio.org/index.php/sdk 2、新建一个环境变量&…

linux内核模块module_put()函数详解--03

对应module_put()函数详细用法分享。 第一&#xff1a;函数简介 //函数原型 void module_put(struct module * module) //函数功能 该函数功能是将一个特定模块module的引用计数减一 这样当一个模块的引用计数不为0而不能被内核卸载的 时候&#xff0c;可以调用该函数一次或多…

这样用TVS管

对于工程师来说&#xff0c;浪涌保护不仅仅是选择合适的电源板或者拔下几根电缆&#xff0c;主要涉及在 PCB 布局中放置瞬态保护组件并应用明确的接地策略。 TVS 二极管是用于保护PCB布局中组件的常用组件&#xff0c;这些组件放置在数据线上&#xff0c;一旦电路中接收到ESD脉…

出生医学证明档案管理系统

出生医学证明档案管理系统是一种用于管理和维护出生医学证明档案的软件系统。该系统可以帮助医院、出生登记机构和其他相关部门有效地管理和存储出生医学证明档案&#xff0c;提高工作效率和数据安全性。 专久智能出生医学证明档案管理系统的核心功能包括&#xff1a; 1. 档案管…

Linux超详细笔记

文章目录 Linux学习笔记操作系统Linux初识Linux的诞生Linux内核Linux发行版 虚拟机VMware安装远程连接Linux系统FinalShellFinalShell连接Linux WSL配置UbuntuLinux常用命令1.入门2.ls命令cd命令3.pwd命令4.相对路径和绝对路径5.mkdir命令6.文件操作命令&#xff08;1&#xff…

【机构vip教程】Charles(1):Charles的介绍及安装

Charles Charles 是在 Mac &#xff08;Charles是跨平台的 &#xff09;下常用的网络封包截取工具&#xff0c;在做移动开发、测试时&#xff0c;我们为了调试与服务器端的网络通讯协议&#xff0c;常常需要截取网络封包来分析。Charles是一个HTTP代理服务器,HTTP监视器,反转代…

从零开始的 dbt 入门教程 (dbt core 开发进阶篇)

引 在上一篇文章中&#xff0c;我们花了专门的篇幅介绍了 dbt 更多实用的命令&#xff0c;那么我们继续按照之前的约定来聊 dbt 中你可能会遇到的疑惑以及有用的概念&#xff0c;如果你是 dbt 初学者&#xff0c;我相信如下知识点一定会对你有极大的帮助&#xff1a; 了解 db…

【Linux篇】Linux项目自动化构建工具-make/Makefile

&#x1f49b;不要有太大压力&#x1f9e1; &#x1f49b;生活不是选择而是热爱&#x1f9e1; &#x1f49a;文章目录&#x1f49a; 什么是make/Makefilemakefile认识makefilemakefile的编写伪目标 Linux下多程序编译 什么是make/Makefile 在实际工作中&#xff0c;一个项目可能…

在职阿里6年,一个28岁女软件测试工程师的心声

简单的先说一下&#xff0c;坐标杭州&#xff0c;16届本科毕业&#xff0c;算上年前在阿里巴巴的面试&#xff0c;一共有面试了有6家公司&#xff08;因为不想请假&#xff0c;因此只是每个晚上去其他公司面试&#xff0c;所以面试的公司比较少&#xff09; 其中成功的有4家&am…

芯片的分类

目录 通用处理器数字信号处理器专用处理器 通用处理器 我们常听说的中央处理器CPU就是一种典型的通用处理器&#xff08;GPP&#xff09;。这种处理器多使用片上系统&#xff08;SoC&#xff09;的设计理念&#xff0c;在处理器上集成各种功能模块&#xff0c;每一种功能都是用…