从散点图的fig文件中提取数据

记录下来,以防忘记

clc;clear;close all
fig = openfig('figure1.fig');
scatters = findobj(fig, 'type', 'scatter');
u_velocity = get(scatters, 'XData');
v_velocity = get(scatters, 'YData');
xlswrite('u_velocity.xlsx',u_velocity); 
xlswrite('v_velocity.xlsx',v_velocity);

然后在工作区就可以看到

在这里插入图片描述

敬请各位大佬批评指正!

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用Python数据可视化库matplotlib来绘制iris散点图矩阵。下面是一个示例程序:import numpy as np import matplotlib.pyplot as plt # 读取iris.npz文件数据 data = np.load('iris.npz') # 获取特征值 x_axis = data['x_axis'] y_axis = data['y_axis'] # 绘制散点图矩阵 plt.scatter(x_axis, y_axis) # 显示图形 plt.show() ### 回答2: 要读取iris.npz文件数据,并绘制iris散点图矩阵,可以使用Python的numpy和matplotlib库来实现。 首先,我们需要导入所需的库: import numpy as np import matplotlib.pyplot as plt 然后,我们可以使用numpy的load函数来加载iris.npz文件,并将其保存为一个numpy数组: data = np.load('iris.npz') iris_data = data['data'] labels = data['labels'] 接下来,我们可以使用matplotlib的scatter函数来绘制散点图矩阵。散点图矩阵可以通过将不同属性对应的数据点绘制在不同的子图来展示数据的分布情况。 首先,我们可以创建一个3x3的子图矩阵,并设置其大小为(12,12): fig, ax = plt.subplots(3, 3, figsize=(12,12)) 然后,我们可以使用两个嵌套的for循环来遍历属性之间的组合,并在每个子图绘制对应的散点图: for i in range(3): for j in range(3): ax[i,j].scatter(iris_data[:,i], iris_data[:,j], c=labels) ax[i,j].set_xlabel('Attribute ' + str(i+1)) ax[i,j].set_ylabel('Attribute ' + str(j+1)) ax[i,j].set_xticks([]) ax[i,j].set_yticks([]) 最后,我们可以使用plt.tight_layout()函数来调整子图的布局,并使用plt.show()函数来显示散点图矩阵: plt.tight_layout() plt.show() 通过以上步骤,我们就可以成功加载iris.npz文件数据,并绘制出iris散点图矩阵。 ### 回答3: 要读取并绘制iris.npz文件数据,我们可以使用Python的numpy和matplotlib库来完成。 首先,我们需要导入需要的库和模块: ```python import numpy as np import matplotlib.pyplot as plt ``` 然后,我们可以使用`np.load`函数来加载iris.npz文件,并将数据赋值给一个变量: ```python data = np.load('iris.npz') ``` 接下来,我们可以从加载的数据提取出我们需要的内容。在iris数据,我们有4个特征(Sepal Length、Sepal Width、Petal Length和Petal Width),以及对应的标签(Species)。 ```python features = data['features'] labels = data['labels'] ``` 现在,我们可以使用matplotlib的`scatter`函数来绘制散点图矩阵。我们可以使用`subplots`函数先创建一个空的画布,并在其上添加子图。 ```python fig, axs = plt.subplots(4, 4, figsize=(12,12)) ``` 然后,我们可以使用双重循环来遍历所有的特征组合,并在相应的子图绘制散点图。 ```python for i in range(4): for j in range(4): axs[i,j].scatter(features[:,i], features[:,j], c=labels) axs[i,j].set_xlabel('Feature {}'.format(i+1)) axs[i,j].set_ylabel('Feature {}'.format(j+1)) ``` 最后,我们可以使用`plt.show()`来展示绘制好的散点图矩阵。 ```python plt.show() ``` 完整的代码如下所示: ```python import numpy as np import matplotlib.pyplot as plt data = np.load('iris.npz') features = data['features'] labels = data['labels'] fig, axs = plt.subplots(4, 4, figsize=(12,12)) for i in range(4): for j in range(4): axs[i,j].scatter(features[:,i], features[:,j], c=labels) axs[i,j].set_xlabel('Feature {}'.format(i+1)) axs[i,j].set_ylabel('Feature {}'.format(j+1)) plt.show() ``` 以上就是读取iris.npz文件数据并绘制散点图矩阵的Python程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值