python matplotlib绘制散点图_python – 如何制作matplotlib散点图方块?

在gnuplot中,我可以这样做以获得正方形图:

set size square

matplotlib中的等价物是什么?我试过这个:

import matplotlib

matplotlib.use('Agg')

import matplotlib.pyplot as plt

plt.rcParams['backend'] = 'TkAgg'

x = [0, 0.2, 0.4, 0.6, 0.8]

y = [0, 0.5, 1, 1.5, 2.0]

colors = ['k']*len(x)

plt.scatter(x, y, c=colors, alpha=0.5)

plt.axes().set_aspect('equal', adjustable='datalim')

plt.xlim((0,2))

plt.ylim((0,2))

plt.grid(b=True, which='major', color='k', linestyle='--')

plt.savefig('{}.png'.format(rsID), dpi=600)

plt.close()

plt.clf()

我得到一个正方形网格,但情节本身不是正方形.如何使x范围从0到2并使图形正方形?

最佳答案 你可以这样做:

import matplotlib.pyplot as plt

fig, ax = plt.subplots()

x = [0, 0.2, 0.4, 0.6, 0.8]

y = [0, 0.5, 1, 1.5, 2.0]

colors = ['k']*len(x)

ax.scatter(x, y, c=colors, alpha=0.5)

ax.set_xlim((0,2))

ax.set_ylim((0,2))

x0,x1 = ax.get_xlim()

y0,y1 = ax.get_ylim()

ax.set_aspect(abs(x1-x0)/abs(y1-y0))

ax.grid(b=True, which='major', color='k', linestyle='--')

fig.savefig('test.png', dpi=600)

plt.close(fig)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: PythonMatplotlib库可以用来绘制散点图散点图是一种用于显示两个变量之间关系的图表,其中每个表示一个数据。要绘制散点图,需要使用Matplotlib的scatter()函数。该函数需要传入两个参数,分别是x和y轴的数据。例如,以下代码可以绘制一个简单的散点图: ```python import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] plt.scatter(x, y) plt.show() ``` 这段代码将会在屏幕上显示一个散点图,其中x轴表示1到5的整数,y轴表示2到10的整数。每个的位置表示x和y轴上的值。 ### 回答2: Python中的matplotlib库是一个强大的绘图工具,可用于绘制各种类型的图表,包括散点图散点图是一种直观的数据展示方式,可以用于分析两个变量之间的关系,例如展示身高和体重之间的相关性等。 在此之前,我们需要导入matplotlib库,具体方法是在脚本或交互式环境中输入以下代码: import matplotlib.pyplot as plt 接下来,我们来看一下如何绘制散点图。首先,我们需要准备数据。在这里,我们将使用numpy库生一组随机数据。 import numpy as np x = np.random.randn(100) #生100个随机数 y = np.random.randn(100) #生100个随机数 接下来,我们可以使用matplotlib库中的scatter()函数来绘制散点图。该函数需要两个参数:x轴和y轴上的数据,可以通过以下方式来绘制: plt.scatter(x, y) plt.show() 此时,我们就可以在图形界面中看到一个散点图了。我们还可以根据需求设置一些属性,例如颜色、大小、标记等。以下是具体的代码和作用: plt.scatter(x, y, c='red', s=30, marker='o') #c指定颜色为红色,s指定大小为30,marker表示标记类型为圆形 plt.xlabel('X-axis') #设置x轴标签 plt.ylabel('Y-axis') #设置y轴标签 plt.title('Scatter Plot') #设置图表标题 plt.show() 除了基本的绘图功能,matplotlib库还提供了丰富的扩展功能,例如添加子图、设置坐标轴范围、保存图像等。总之,matplotlib是一个强大的可视化工具,可以满足不同需求的数据展示和分析。 ### 回答3: Python是一种流行的编程语言,matplotlib则是一个广受欢迎的绘图库,它可以用来绘制不同类型的图形,包括散点图散点图是一个二维坐标系中的图形,它通过在坐标系中绘制数据来显示数据之间的关系。Python中的matplotlib库可以方便地绘制散点图,让我们来看看如何实现。 在使用matplotlib之前,需要安装该库。可以使用pip命令在命令行终端中安装matplotlib。安装步骤如下: ```python pip install matplotlib ``` 在安装完之后,我们可以新建一个Python文件,来绘制散点图。以下是用matplotlib绘制散点图的基本步骤: 1. 引入matplotlib模块 这是使用matplotlib的第一步。它告诉Python我们要用这个模块来绘图。 ```python import matplotlib.pyplot as plt ``` 2. 给出数据 散点图的核心是数据,我们需要给出要绘制的数据。可以使用Python中的列表或数组来表示数据。以下是一些示例数据: ```python x = [1, 2, 3, 4, 5] y = [10, 20, 30, 40, 50] ``` 这里给出了两个列表x和y,它们分别表示横坐标和纵坐标数据,共有5个数据。 3. 绘制散点图 我们需要使用plt.scatter函数来绘制散点图。以下是绘制一个散点图的代码: ```python import matplotlib.pyplot as plt # 数据 x = [1, 2, 3, 4, 5] y = [10, 20, 30, 40, 50] # 绘制散点图 plt.scatter(x, y) # 显示图形 plt.show() ``` 这个代码将产生如下图形: ![matplotlib_scatter_plot1.png](https://cdn.jsdelivr.net/gh/stevenli91748/nlp/image/matplotlib_scatter_plot1.png) 我们可以看到,matplotlib绘制了5个数据,每个的横坐标和纵坐标都对应列表x和y中的数据。 4. 设置散点图的样式 我们可以使用plt.scatter函数的参数来设置散点图的样式,如的大小、颜色、样式等等。以下是一些示例代码: ```python import matplotlib.pyplot as plt # 数据 x = [1, 2, 3, 4, 5] y = [10, 20, 30, 40, 50] # 绘制散点图 plt.scatter(x, y, s=100, c='blue', marker='^') # 显示图形 plt.show() ``` 这个代码将产生如下图形: ![matplotlib_scatter_plot2.png](https://cdn.jsdelivr.net/gh/stevenli91748/nlp/image/matplotlib_scatter_plot2.png) 我们可以看到,散点图的大小变大了,颜色变为了蓝色,样式变为了三角形。这些属性可以通过s、c和marker参数来设置。 5. 添加标题和标签 我们也可以给散点图添加标题和标签。以下是一些示例代码: ```python import matplotlib.pyplot as plt # 数据 x = [1, 2, 3, 4, 5] y = [10, 20, 30, 40, 50] # 绘制散点图 plt.scatter(x, y) # 添加标题和标签 plt.title('Scatter Plot') plt.xlabel('X Values') plt.ylabel('Y Values') # 显示图形 plt.show() ``` 这个代码将产生如下图形: ![matplotlib_scatter_plot3.png](https://cdn.jsdelivr.net/gh/stevenli91748/nlp/image/matplotlib_scatter_plot3.png) 我们可以看到,散点图上方有一个标题,横轴和纵轴也带有标签,这些都是通过设置plt.title、plt.xlabel和plt.ylabel函数参数实现的。 绘制散点图是使用matplotlib绘图库的一个基本技能。通过上面的步骤,我们可以轻松地利用Python绘制出各种样式的散点图

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值