分类 Python 开发 下的文章



1、安装pip3

       sudo apt-get install  python3-pip



2、Debian安装pandas

     error: externally-managed-environment     

     上述错误是因为debian与ubuntu不同,ubutnu可以直接通过pip3安装Python包,

     但Debian跟他推荐使用sudo apt-get  install  python3-xxx,方法安装,这里的xxx代指包名。比如安装pandas包。

     sudo  apt-get install  python3-pandas


import matplotlib.pyplot as plt
from matplotlib.patches import Ellipse
 
fig, ax = plt.subplots()
 
# 创建一个椭圆对象,参数分别是:中心坐标(x, y),宽高(2*a, 2*b),旋转角度theta
ellipse = Ellipse(xy=(0, 0), width=8, height=4, angle=45, edgecolor='blue', fill=False, linestyle=':', linewidth=4)

注意:width、height这里是直径!!!


 

# 将椭圆添加到坐标轴上
ax.add_patch(ellipse)
 
# 设置坐标轴的范围
ax.set_xlim(-10, 10)
ax.set_ylim(-10, 10)
 
# 显示图形
plt.show()





在使用Python的matplotlib库绘制图形时,我们常常需要控制坐标轴的单位长度。

当x和y轴的比例不同,图形可能会被拉伸或者压缩,从而失真。本文将介绍如何通过设置坐标轴的纵横比例,

使得x和y轴的单位长度相等。

Matplotlib是一个功能强大的Python绘图库,可用于创建各种类型的静态、动态和交互式图形。

它提供了许多选项和配置,以便用户可以自定义他们的绘图。其中一个重要的功能就是控制坐标轴的纵横比例。

在Matplotlib中,我们可以使用axis()函数来设置坐标轴的范围和纵横比例。

具体来说,axis()函数有四个参数:[xmin, xmax, ymin, ymax]。这些参数控制了x和y轴的范围。

如果我们只提供前两个参数,则Matplotlib将使用默认值。

接下来,我们可以使用aspect参数来控制坐标轴的纵横比例。该aspect参数可以是一个浮点数或字符串(如"equal")。

如果我们将aspect参数设置为"equal",则x和y轴的单位长度将相等。

否则,我们可以计算出x和y轴的比例,并将其作为浮点数提供给aspect参数。

下面,我们通过一个示例来演示如何使用Matplotlib设置坐标轴的纵横比例。

首先,我们需要导入Matplotlib库,并创建一个Figure对象和一个Axes对象。

然后,我们使用plot()函数生成一些随机数据并将其绘制在图形上。

import matplotlib.pyplot as pltimport numpy as np# 创建Figure对象和Axes对象fig, ax = plt.subplots()# 生成随机数据x = np.arange(0, 10)y = np.random.rand(10)# 绘制线条ax.plot(x, y)

现在,我们将使用axis()方法控制坐标轴的范围和纵横比例。

在这里,我们将指定x轴的范围为[0, 10],y轴的范围为[0, 1],并将aspect参数设置为"equal":

# 设置坐标轴范围和aspect参数ax.axis([0, 10, 0, 1])

ax.set_aspect("equal")

最后,我们通过show()方法显示图形:

plt.show()

现在,我们已经成功地使用Matplotlib设置了坐标轴的纵横比例,使得x和y轴的单位长度相等。我们可以看到图形看起来更加正常,因为没有被拉伸或压缩

总结起来,我们可以通过设置坐标轴的纵横比例使得x和y轴的单位长度相等。在Matplotlib中,

我们可以使用axis()函数来设置坐标轴的范围和纵横比例,以及使用set_aspect()方法来设置纵横比例。

如果我们将aspect参数设置为"equal",则x和y轴的单位长度将相等。否则,我们可以计算出x和y轴的比例,

并将其作为浮点数提供给aspect参数。


一、XYZ数据: points.csv

     

1.1,1.2,1.3
2.1,2.2,2.3
3.1,3.2,3.3
4.1,4.2,4.3




一、Python绘制脚本: plot_3D.py


from    mpl_toolkits.mplot3d import Axes3D

import  matplotlib.pyplot as plt
import  pandas  as  pd



points = pd.read_csv('points.csv')
frame = pd.DataFrame(points)

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

x = frame.iloc[:,0]
y = frame.iloc[:,1]
z = frame.iloc[:,2]

#  x   y   z  
# 1.1,1.2,1.3
# 2.1,2.2,2.3
# 3.1,3.2,3.3
# 4.1,4.2,4.3

ax.scatter(x, y, z, c='r', marker='o')

plt.show()