其他三维图形
%绘制魔方阵的三维条形图
subplot(2,2,1);
bar3(magic(4));
 
%以三维杆图形式绘制曲线y=2sin(x)
subplot(2,2,2);
y=2*sin(0:pi/10:2*pi);
stem3(y);
 
%已知x=[2347,1827,2043,3025],绘制饼图
subplot(2,2,3);
pie3([2347,1827,2043,3025]);
 
%用随机的顶点坐标值画出2个黄色三角形
subplot(2,2,4);
fill3(rand(3,2),rand(3,2),rand(3,2), 'y' );
%fill3函数等效于二维函数fill,可在三维空间内绘制出_填充多边形_
%格式:fill3(x,y,z,c)

应用示例:

 

例一:统计灰度图片的“灰度频率直方图”和“累计直方图”

A = imread('pout.tif') ;  %读取一个内置图片
%%内置图片放在……MATLAB\R2010*\toolbox\images\imdata 
A = A(:)';
count0=zeros(1,256);       %设置矩阵大小
for x=1:length(A),count0(A(x)+1)=count0(A(x)+1)+1;end    %各灰度级像素个数
P=count0/length(A);                                      %频率
stem(P,'Marker','none'); axis tight; %作图显示  频率直方图
Hp=P;
for i=2:256,Hp(i)=P(i)+Hp(i-1);end   %累计直方图
stem(Hp,'Marker','none'); axis tight;  %作图显示

 
 
例二:绘制填充空间五角星
 
%%%方法一
t=1:2:11;  
x = sin(0.4*t*pi);   %五角星嘛!  六角星可以除以6
y = cos(0.4*t*pi);
z=0.5*x+0.3*y;  %放置到三维空间中,这是该五角星所在的三维平面函数
fill3(x,y,z,'r')
xlabel('x');ylabel('y');zlabel('z');
haxes = gca;   axis square;box on;
set(haxes,'xticklabel','','yticklabel','','zticklabel','')  %移除原图坐标轴轴的标注
%注意fill是顺时针方向的,所以五角星闭合后,中间的五边形并没有填充%%地图多边形矢量化你懂得

hold on;  %填充五边形
t=1:2:11;
x=cos(0.4*pi)/cos(0.2*pi)*sin(0.2*t*pi);
y=cos(0.4*pi)/cos(0.2*pi)*cos(0.2*t*pi);
z=0.5*x+0.3*y;
fill3(x,y,z,'r','EdgeColor','r');  %将五边形的边界颜色设置为红色
    %%%显示五角星所在的边界 一个圆圈
    t=1:0.1:11;   
    x = cos(0.4*t*pi);
    y = sin(0.4*t*pi);
    z=0.5*x+0.3*y;
    plot3(x,y,z);hold off;
 
%%%方法二
i=1;
for ag=0.2*pi:0.2*pi:2.2*pi
    if mod(i,2)==1  %i是奇数,长边,按照长边的计算公式
        x(i) = sin(ag);   %五角星嘛!  六角星可以除以6
        y(i) = cos(ag);
    else      %i是偶数,短边,按照短边的计算公式
        x(i)=cos(0.4*pi)/cos(0.2*pi)*sin(ag);
        y(i)=cos(0.4*pi)/cos(0.2*pi)*cos(ag);
    end
    i=i+1;
end;clear i ag;
z=0.5*x+0.3*y;
fill3(x,y,z,'r','EdgeColor','r'); 
xlabel('x');ylabel('y');zlabel('z');
haxes = gca;   axis square;box on;
set(haxes,'xticklabel','','yticklabel','','zticklabel','') 
 
 
 
 
 

Matlab绘图基础——其他三维图形(绘制填充的五角星)的更多相关文章

  1. Matlab绘图基础——绘制三维表面

    %绘制三维表面 ------------------------------------- %1.绘制线框图:mesh:每一条曲线称为mesh line %首先利用meshgrid函数产生平面区域内的 ...

  2. Matlab绘图基础——图形绘制的插值  以及 图像大小的重采样

    使用说明:图形绘制时的插值 interp1   %1-D data interpolation interpft  %使用fft算法插值     %将原数据x转换到频率域,再逆转换回来更密集的数据采样 ...

  3. Matlab绘图基础——绘制等高线图

    % 等高线矩阵的获取 C = contourc(peaks(20),3);              % 获取3个等级的等高线矩阵 % 等高线图形的绘制 contour(peaks(20),10);c ...

  4. Matlab绘图基础——图形修饰处理(入门)

    引入--标题.色条.坐标轴.图例等 例一: set(groot,'defaultAxesLineStyleOrder','remove','defaultAxesColorOrder','remove ...

  5. Direct3D11学习:(七)绘图基础——彩色立方体的绘制

    转载请注明出处:http://www.cnblogs.com/Ray1024 一.概述 在前面的几篇文章中,我们详细介绍了Direct3D渲染所需要的数学基础和渲染管道理论知识.从这篇文章开始,我们就 ...

  6. Matlab绘图基础——colormap在数字图像处理及三维图形展示上的应用(分层设色)

        色图(color map)是MATLAB系统引入的概念.在MATLAB中,每个图形窗口只能有一个色图.        色图是m×3 的数值矩阵,它的每一行是RGB三元组.色图矩阵可以人为地生成 ...

  7. Matlab绘图基础——利用axes(坐标系图形对象)绘制重叠图像 及 一图多轴(一幅图绘制多个坐标轴)

    描述 axes在当前窗口中创建一个包含默认属性坐标系 axes('PropertyName',propertyvalue,...)创建坐标系时,同时指定它的一些属性,没有指定的使用DefaultAxe ...

  8. Matlab绘图基础——绘制向量图,二维三维(绘制参数曲线图)

    ------------------------------------------- %绘制向量场图 %例一 clear all;clc; [X,Y] = meshgrid(-2:.2:2,-3:. ...

  9. Matlab绘图基础——绘制三维曲线

    %% 绘制三维曲线 %plot3函数,其中每一组x,y,z组成一组曲线的坐标参数,选项的定义和plot函数相同. %1.当x,y,z是同维向量时,则x,y,z 对应元素构成一条三维曲线. x0 = 0 ...

随机推荐

  1. Android项目中的各个模块框架设计

    作为Android开发,现对项目开发中的各个模块搭建,梳理如下: Android UI框架,开发人员需要达到专家级 网络框架 浏览框架 图片加载框架 图片裁剪压缩工具类 客户端并发框架 线程池设计 ( ...

  2. Java基本数据类型的长度范围

    1.Java基本数据类型的长度范围代码 /** * @Title:DataTypeLength.java * @Package:com.you.dao * @Description:Java数据类型长 ...

  3. org.hibernate.exception.GenericJDBCException: Could not open connection

    1.错误描述 org.hibernate.exception.GenericJDBCException: Could not open connection at org.hibernate.exce ...

  4. c语言 第二次实验报告

    一·实验题目,设计思路,实现方法 11-7 找鞍点 一个矩阵元素的"鞍点"是指该位置上的元素值在该行上最大.在该列上最小. 本题要求编写程序,求一个给定的n阶方阵的鞍点. 利用双重 ...

  5. Django学习-4-request获取数据

    app下views.py             获取前端HTML数据的一些方法             def func(request):                 # request.me ...

  6. meta的各种参数

    <!DOCTYPE html> <!-- 使用 HTML5 doctype,不区分大小写 --> <html lang="zh-cmn-Hans"&g ...

  7. JavaScript设计模式(7)-设配器模式

    适配器模式 1. 作用: 协调两个不同的接口 2. 适用场景 适配器适用于客户期待的接口与现有 API 提供的接口不兼容这种场景.他只能用来协调语法上的差异问题.适配器所适配的两个方法执行的应该是类似 ...

  8. 用自定义注解实现fastjson序列化的扩展

    这篇文章起源于项目中一个特殊的需求.由于目前的开发方式是前后端分离的,基本上是通过接口提供各个服务. 而前两天前端fe在开发中遇到了一些问题:他们在处理字符串类型的时间时会出现精度丢失的情况,所以希望 ...

  9. webpack3中使用postcss-loader和autoprefixer给css3样式添加浏览器兼容

    1.在webpack中需要处理css必须先安装如下两个loader npm install --save-dev css-loader style-loader 2.要处理sass和添加浏览器前缀需要 ...

  10. js实现简单的轮播效果

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...