如何用Matlab绘制球面图形?以不同视角观察球面:x^2+y^2+z^2=r^2; x^2+y^2=rx

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用Matlab绘制球面图形?以不同视角观察球面:x^2+y^2+z^2=r^2; x^2+y^2=rx相关的知识,希望对你有一定的参考价值。

参考技术A clear all;clc;
r=2;
[x0,y0,z0]=sphere(50);
x=r*x0;y=r*y0;z=r*z0;
surf(x,y,z);hold on;
f=@(x,y)x.^2+y.^2-r*x;
ezsurf(f,[-1.5,2.5],[-2,1.5]);
axis equal;
view(30,20);

如何用matlab输出图形中各点的坐标

利用matlab,通过以下程序,画出图形。
程序:
R=10000;
B=3950;
T2=273.15+25;
syms T1;
ezplot(R*exp(B*(1/T1-1/T2)),[273.15+30:273.15+50]);
title('温度曲线');
xlabel('温度T1');
ylabel('电阻R');
图:

现在的问题是,我想让matlab输出每个横坐标对应的纵坐标。并且各横坐标按照0.1的间距增加。请高手帮忙。

实现的方法和详细的操作步骤如下:

1、第一步,选择菜单栏的“Data Cursor”选项,然后在要查看其坐标值的数据点上点击鼠标的左键,见下图,转到下面的步骤。

2、第二步,执行完上面的操作之后,在“tools”选项中单击“Data Cursor”按钮,见下图,转到下面的步骤。

3、第三步,执行完上面的操作之后,就获得了想要的结果了,见下图。这样,就解决了这个问题了。

参考技术A

实现的方法和详细的操作步骤如下:

1、刚开始第一步就是打开matlab,接下来找到【Data Cursor】工具,下一步就是点击打开它。

2、接下来下一步就是鼠标左键单击图形中的任意位置,就可以看到各个点的坐标了。

2、也可以选择【tools】菜单栏下面的【Data Cursor】选项,具体情况如图:

3、接下来完成所有操作之后,就可以得到想要的结果,用matlab输出图形中各点的坐标。

参考技术B

1、如图所示,假设需要获取椭圆圈内的最大极值点的坐标。

2、显然,该函数图象上点的分布十分密集,为了能够拾取到正确的点,需要放大图像。使用放大图像按钮,框选需要放大的区域。

3、继续放大函数图像,到各点可清晰分辨为止,如图所示。

4、使用数据游标按钮,在最大极值点上或其附近点击,便拾取到了该最大极值点,其坐标也自动显示出来。本实例的最大极值点坐标为(4,2.22*10^9)。

5、若要获取更精确的坐标数值,可以在所拾取点的右键菜单中,选择将游标数据导出到工作区中再查看。

参考技术C R=10000;
B=3950;
T2=273.15+25;
syms T1;
f=R*exp(B*(1/T1-1/T2));
ezplot(f,[273.15+30:273.15+50]);
title('温度曲线');
xlabel('温度T1');
ylabel('电阻R');

T1=[273.15+30:0.1:273.15+50];
result=subs(f,'T1',T1);

运行完程序后,对应的T1的纵坐标存放在result里边。追问

请问result在哪里?按照你说的,输入之后,还是只有图形,没有其它的。

追答

在workspace框中,如下图,result和T1对应,双击打开。

本回答被提问者采纳
参考技术D 那样的话图上的横坐标就太密啦,LZ希望显示横坐标的范围是从多少到多少呢?追问

范围就是图上的范围,[273.15+30:273.15+50]。由于我要精确到0.1,所以需要横坐标精确到小数点后一位,并且输出对应的纵坐标。

追答

那样的话横坐标就混到一起看不清啦,要精确到0.1的话应该画一张表吧;

画完图后,写一句来设置横坐标:

set(gca,'xtick',[303.15:0.1:323.15])

...

结果图片就变成这样子了orz

追问

我是要单独输出来,而不是在图形上显示。就像另外一个回答的那样。谢谢了哈。

追答

那就subs一下用数值代换就欧了...
结果拷到excel里就好了

追问

恩,你说的跟楼上那个一样,只是他要快一步。不过也同样谢谢。

追答

不客气

以上是关于如何用Matlab绘制球面图形?以不同视角观察球面:x^2+y^2+z^2=r^2; x^2+y^2=rx的主要内容,如果未能解决你的问题,请参考以下文章

如何用matlab画出四个单位球面,两两相切?

用matlab生成在单位球面上均匀的100个点几种方法?

mathematica 画出部分球面图形的有关代码

用MATLAB怎么画球面

如何用MATLAB把两个不同坐标范围的函数画在一个图上?

三维路径规划基于matlab球面矢量粒子群算法无人机三维路径规划含Matlab源码 1682期