MATLAB 画图问题
来源:百度知道 编辑:UC知道 时间:2024/09/21 22:03:15
画一个散点图 点坐标由a=load('1.txt')读进 相当于a =[1 2;1 7;4 2;2 5];
(举例) 一行代表一个点 比如第一行代表点坐标(1,2)第二行代表点坐标(3,4)
每一个点都在lof这个矩阵(自己建的)里有一个值 第一个点对于第一个值
第二个点对于第二个值 以此类推 要求画出起散点图 重点点要描红
所谓的重点点就是我之前会给一个值 比该值大的就是重点点
大晚上的可能逻辑不太清楚 我已经尽力说了 还有什么不明白的可以问
能不能解释一下这个程序 因为我想把它用作我的一个程序中最后这段可视化的部分
当然 如果能我把这个程序看一下并做一下可视化可追加五十分 很简单的程序
另外 这个程序我也单独运行了 不大正确 只画出了一个红色的点 其他黑的点都没有
谢谢 这个程序单独运行对了 但是我把它加进我的程序里时候 从外面读入一个这样的数据集 也是二维的 这句:plot(a(:,1),a(:,2),'k.') 就显示维数不对 请问是怎么回事?
首先谢谢这样帮忙 我已经追加了积分
还是显示维度不大对 我读入的文件内容是这样的
1 2
3 1
2 5
4 6
2 3
6 8
1 5
4 2
2 3
4 4
1 1
2 2
3 3
4 5
6 1
2 9
4 1
5 7
2 8
3 5
100 200
1000 1000
是这样 我的lof矩阵是一个N*1的矩阵
大概代码:
a=load('1.txt');
na=length(a);
lof=zeros(na,1);
然后在一堆循环里做完运算求出来值放进lof矩阵里
(举例) 一行代表一个点 比如第一行代表点坐标(1,2)第二行代表点坐标(3,4)
每一个点都在lof这个矩阵(自己建的)里有一个值 第一个点对于第一个值
第二个点对于第二个值 以此类推 要求画出起散点图 重点点要描红
所谓的重点点就是我之前会给一个值 比该值大的就是重点点
大晚上的可能逻辑不太清楚 我已经尽力说了 还有什么不明白的可以问
能不能解释一下这个程序 因为我想把它用作我的一个程序中最后这段可视化的部分
当然 如果能我把这个程序看一下并做一下可视化可追加五十分 很简单的程序
另外 这个程序我也单独运行了 不大正确 只画出了一个红色的点 其他黑的点都没有
谢谢 这个程序单独运行对了 但是我把它加进我的程序里时候 从外面读入一个这样的数据集 也是二维的 这句:plot(a(:,1),a(:,2),'k.') 就显示维数不对 请问是怎么回事?
首先谢谢这样帮忙 我已经追加了积分
还是显示维度不大对 我读入的文件内容是这样的
1 2
3 1
2 5
4 6
2 3
6 8
1 5
4 2
2 3
4 4
1 1
2 2
3 3
4 5
6 1
2 9
4 1
5 7
2 8
3 5
100 200
1000 1000
是这样 我的lof矩阵是一个N*1的矩阵
大概代码:
a=load('1.txt');
na=length(a);
lof=zeros(na,1);
然后在一堆循环里做完运算求出来值放进lof矩阵里
%清屏,清内存
clc
clear
clf
hold on %允许前后两幅图叠加
%赋初值
a =[1 2;1 7;4 2;2 5];
lof = [1 2 3 4];
standard_lof = 3; %这个是判断标准
%
plot(a(:,1),a(:,2),'k.') %把所有点都画上,黑色圆点
I=find(lof> standard_lof) %找出大于判断标准的点
plot(a(I,1),a(I,2),'r.') %用红色圆点标出
===============
看不到黑点是因为黑点正好在三个角上,需要的话可以修改一下坐标范围:
xlim([0,5])
ylim([0,10])
===============
可能因为你的矩阵是2×N的,在前面加一个
a=a';
就好了
==============
我这里显示没有问题啊
%清屏,清内存
clc
clear
clf
hold on %允许前后两幅图叠加
%赋初值
a = [1 2
3 1
2 5
4 6
2 3
6 8
1 5
4 2
2 3
4 4
1 1
2 2
3 3
4 5
6 1
2 9
4 1
5 7
2 8
3 5
100 200
1000 1000];
lof = [1 2 3 4];
standard_lof = 3; %这个是判断标准
%
plot(a(:,1),a(:,2),'k.') %把所有点都画上,黑色圆点