原 matplotlib散点scatter学习2,参数测试(marker1)

article/2025/10/12 3:22:21

续上篇
绘制散点图的函数,x,y分别对应点的x轴坐标和y轴坐标
plt.scatter(x,y)
matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None,
cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None,
verts=None, edgecolors=None, , data=None, **kwargs)[source]
继续测试marker,实际上marker涉及的内容比想象的复杂,marker 定义:
markers = {
‘.’: ‘point’,
‘,’: ‘pixel’,
‘o’: ‘circle’,
‘v’: ‘triangle_down’,
‘^’: ‘triangle_up’,
‘<’: ‘triangle_left’,
‘>’: ‘triangle_right’,
‘1’: ‘tri_down’,
‘2’: ‘tri_up’,
‘3’: ‘tri_left’,
‘4’: ‘tri_right’,
‘8’: ‘octagon’,
‘s’: ‘square’,
‘p’: ‘pentagon’,
'
’: ‘star’,
‘h’: ‘hexagon1’,
‘H’: ‘hexagon2’,
‘+’: ‘plus’,
‘x’: ‘x’,
‘D’: ‘diamond’,
‘d’: ‘thin_diamond’,
‘|’: ‘vline’,
‘_’: ‘hline’,
‘P’: ‘plus_filled’,
‘X’: ‘x_filled’,
TICKLEFT: ‘tickleft’,
TICKRIGHT: ‘tickright’,
TICKUP: ‘tickup’,
TICKDOWN: ‘tickdown’,
CARETLEFT: ‘caretleft’,
CARETRIGHT: ‘caretright’,
CARETUP: ‘caretup’,
CARETDOWN: ‘caretdown’,
CARETLEFTBASE: ‘caretleftbase’,
CARETRIGHTBASE: ‘caretrightbase’,
CARETUPBASE: ‘caretupbase’,
CARETDOWNBASE: ‘caretdownbase’,
“None”: ‘nothing’,
None: ‘nothing’,
’ ': ‘nothing’,
‘’: ‘nothing’
}
可以看出marker实际是一个dict,补充定义
0 (TICKLEFT) m25 tickleft
1 (TICKRIGHT) m26 tickright
2 (TICKUP) m27 tickup
3 (TICKDOWN) m28 tickdown
4 (CARETLEFT) m29 caretleft
5 (CARETRIGHT) m30 caretright
6 (CARETUP) m31 caretup
7 (CARETDOWN) m32 caretdown
8 (CARETLEFTBASE) m33 caretleft (centered at base)
9 (CARETRIGHTBASE) m34 caretright (centered at base)
10 (CARETUPBASE) m35 caretup (centered at base)
11 (CARETDOWNBASE) m36 caretdown (centered at base)
还是看代码:

a,b=plt.subplots(2,2) 
col=['c', 'b', 'g', 'r', 'c', 'm', 'y', 'k', 'w'] #定义颜色marke1=['.', ',', 'o', 'v', '^', '<', '>', '1', '2', '3', '4', '8'] #形状1
marke2=[ 's', 'p', 'P', '*', 'h', 'H', '+', 'x', 'X', 'D', 'd', '|', '_'] #形状2
x=2; y=3for i,j in enumerate(marke1):   #mark形状1b[0,0].scatter(x+i, y+2*i, s=(i+1)*8, marker=j, c=col[i % len(col)]) #这个测试字符for i,j in enumerate(marke2):   #marke不能作为list输入b[0,1].scatter(x+i, y+2*i, s=(i+1)*8, marker=j, c=col[i % len(col)]) #这个测试字符
for i in range(6):b[1, 0].scatter(x * (i + 1), y * (i + 1), s=(i+1)*10, marker=i, c=col[i % len(col)]) #这个测试整数b[1, 1].scatter(x * (i + 1), y * (i + 1), s=(i + 1) * 10, marker=i+6, c=col[i % len(col)])  # 这个测试整数plt.show()

运行结果如下在这里插入图片描述
运行结果如上。
下面这段代码可以看到所有定义的线型 引用https://matplotlib.org/gallery/lines_bars_and_markers/marker_reference.html

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.lines import Line2Dpoints = np.ones(4)  # Draw 3 points for each line
text_style = dict(horizontalalignment='right', verticalalignment='center',fontsize=12, fontdict={'family': 'monospace'})
#text_style ={'horizontalalignment': 'right', 'verticalalignment':
# 'center', 'fontsize': 12, 'fontdict': {'family': 'monospace'}}marker_style = dict(linestyle=':', color='0.8', markersize=10,mfc="C0", mec="C0")
#marker_style={'linestyle': ':', 'color': '0.8', 'markersize': 10, 'mfc': 'C0', 'mec': 'C0'}def format_axes(ax):ax.margins(0.2)ax.set_axis_off()ax.invert_yaxis()def nice_repr(text):return repr(text).lstrip('u')def math_repr(text):tx = repr(text).lstrip('u').strip("'").strip("$")return r"'\${}\$'".format(tx)def split_list(a_list):i_half = len(a_list) // 2return (a_list[:i_half], a_list[i_half:])fig, axes = plt.subplots(ncols=2)fig.suptitle('un-filled markers', fontsize=14)# Filter out filled markers and marker settings that do nothing.Myt=[]
MyK=[]
for m,func in  Line2D.markers.items():Myt.append(m)MyK.append(func)
#print(Line2D.filled_markers) #('o', 'v', '^', '<', '>', '8', 's', 'p', '*', 'h', 'H', 'D', 'd', 'P', 'X')
#print(Myt) #['.', ',', 'o', 'v', '^', '<', '>', '1', '2', '3', '4', '8', 's', 'p', '*', 'h', 'H', '+', 'x',
#  'D', 'd', '|', '_', 'P', 'X', 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 'None', None, ' ', '']unfilled_markers = [m for m, func in Line2D.markers.items()if m in Line2D.filled_markers]   #('o', 'v', '^', '<', '>', '8', 's', 'p', '*', 'h', 'H', 'D', 'd', 'P', 'X')# if func != 'nothing' and and m not in Line2D.filled_markers 这一               #行可以看到其它的线型,太多一张图放不下    # 条件:m, func in Line2D.markers.items() 这样用
x=[m for m,y in [(1,2),("x","y")]]
#print(x) #[1, 'x']for ax, markers in zip(axes, split_list(unfilled_markers)):print(zip(axes, split_list(unfilled_markers)))for y, marker in enumerate(markers):ax.text(-1, y*2, nice_repr(marker), **text_style)  #ax.text(-0.5, y, nice_repr(marker), **text_style)ax.plot((y*2) * points, marker=marker, **marker_style)format_axes(ax)
plt.show()

运行结果如下在这里插入图片描述
在这里插入图片描述
下面再看这个例子marker(i,j) j<4 三种形状,i指齿数5角或6角

np.random.seed(19680801)
x = np.arange(0.0, 20.0, 2.0)
y = x ** 1.3 + np.random.rand(*x.shape) * 30.0
s = np.random.rand(*x.shape) * 800 + 500
plt.subplot(211)
col=['c', 'b', 'g', 'r', 'c', 'm', 'y', 'k', 'w'] #定义颜色
for i in range(1,4):for j in range(1,9):plt.scatter((10*i),(j*10), s=80, c=col[j % len(col)], marker=(j, i))plt.subplot(212)
plt.scatter(x, y, s=(x+1)*20, c=col, alpha=0.5, marker=r'$\clubsuit$',label="Luck")
plt.show()

在这里插入图片描述


http://chatgpt.dhexx.cn/article/vXP2HRsp.shtml

相关文章

python画图(标记、marker、设置标记大小、marker符号大全)

初衷 本人由于平常写论文需要输出一些结果图&#xff0c;但是苦于在网上搜python画图时&#xff0c;详细的教程非常多&#xff0c;但是就是找不到能马上解决自己问题那一行代码&#xff0c;所以打算写一些适合需求简单的朋友应急用的教程&#xff0c;应急就必须方便搜索&#x…

matplotlib画布中属性设置常用函数及其说明

绘图时设置坐标轴属性 data np.arange(0,1,0.01) plt.title(my lines example) plt.xlabel(x) plt.ylabel(y) plt.xlim(0,1) plt.ylim(0,1) plt.xticks([0,0.2,0.4,0.6,0.8,1]) plt.yticks([0,0.2,0.4,0.6,0.8,1]) plt.tick_params(labelsize 12) plt.plot(data,data**2) pl…

MATLAB里面size什么意思,matlab中的makersize是什么意思

MATLAB中的绘图语言 plot(j,len1-i,ro,MarkerS...参数那么多&#xff0c;有点晕啊&#xff0c;每个参数代表什么意思啊&#xff1f;&#xff1f;&#xff1f; 前面的j和len1-i...plot(...,PropertyName,PropertyValue,...) plot(j,len1-i,ro,MarkerSize,10,LineWidth,2); 其中j…

matplotlib画图自定义marker

文章目录 matplotlib画图自定义markermarker的特点通过插入图片实现自定义marker通过Path实现自定义marker matplotlib画图自定义marker 在matplotlib工具箱中可以画marker的高级作图函数一共有两个&#xff0c;分别为plot和scatter&#xff0c;可以画出多种marker。但如果需要…

plot函数的应用

这一部分是关于plot函数的简单应用&#xff0c;下面附有一段代码示例&#xff0c;详情请见代码及其注释。 import matplotlib as mlp from PIL import Image from pylab import * import os image_path "D:/warehouse/image_list" # 储存照片的路径 os.chdir(imag…

pyplot散点图标记大小

本文翻译自&#xff1a;pyplot scatter plot marker size In the pyplot document for scatter plot: 在散点图的pyplot文档中&#xff1a; matplotlib.pyplot.scatter(x, y, s20, cb, markero, cmapNone, normNone,vminNone, vmaxNone, alphaNone, linewidthsNone,facetedTr…

matplotlib:marker类型/size/空心

marker类型 plt.plot(RSEP_data, colorcolor[1], labelRSEP, linestyle--, markerv, markerfacecolornone, markersize10)

python pyplot 宽高等比_如何使pyplot分散中的markersize不依赖于图形的比例?

我在做一个模拟&#xff0c;我想用pyplot来显示。在模拟中&#xff0c;有一些圆在移动&#xff0c;当它们重叠时会发生一些事情。当我尝试用pyplot显示这个时&#xff0c;标记的大小不正确。在 我试过改变标记的大小&#xff0c;但没有解决问题。经过一些测试&#xff0c;我意识…

详解Axes()中的markersize

在Matplotlib中&#xff0c;Axes对象的markersize参数是指绘制图形中marker&#xff08;如散点图中的点&#xff09;大小的参数。这个参数指定marker的直径的长度&#xff0c;单位为像素或点&#xff08;pt&#xff09;。具体来说&#xff0c;它控制marker在x轴和y轴方向上的大…

Matlab scatter/plot绘制图时,单点的'MarkerSize'与空间位置的关系

scatter scatter(axes, x, y, sz, ‘Marker’, ‘o’)&#xff1b; scatter()函数中参数sz决定’Marker’&#xff08;即’o’&#xff09;的标记面积&#xff08;大小&#xff09;&#xff0c;默认单位是平方磅&#xff08;points&#xff09;&#xff0c;o’在坐标轴中的宽度…

markersize

为什么80%的码农都做不了架构师&#xff1f;>>> plot([1,2,3,4],[2,5,6,9],c-pentagram,markersize,35) %pentagram:是五角星,c代表颜色亮蓝;-代表线性实线,markersize(即五角星的大小)为35 下面是画图的颜色和线型&#xff0c;matlab 中画图的颜色 字母 颜色…

plot中的 markersize

‘markersize’ plot([0,1,2,3,4],[0,2,5,6,9],‘c-pentagram’,‘markersize’,15) 画图的命令是&#xff1a; marker是图上画上点的地方表上符号&#xff0c;不如点&#xff0c;方框&#xff0c;圆框&#xff0c;十字&#xff0c;星号&#xff0c;等等 后面的size就是其大小…

matlab2015的marker,matlab中markersize什么意思

matlab中如何调整plot多变量绘图中的markersize MATLAB中的绘图语言 plot(j,len1-i,ro,MarkerS...参数那么多&#xff0c;有点晕啊&#xff0c;每个参数代表什么意思啊&#xff1f;&#xff1f;&#xff1f; 前面的j和len1-iplot(...,PropertyName,PropertyValue,...) plot(j,l…

matlab中marker太密,markersize_想问下MATLAB里 ‘Markersize’ 设置的值是‘Marker_

广告位API接口通信错误,查看德得广告获取帮助 想问下MATLAB里 ‘Markersize’ 设置的值是‘Marker_size’是什么意思 就是标准尺寸。 ‘markersize’plot([0,1,2,3,4],[0,2,5,6,9],c-pentagram,markersize,15) 画图的命令是:marker是图上画上点的地方表上符号,不如点,方框,…

matlab里markersize,Matlab scatter/plot绘制图时,单点的'MarkerSize'与空间位置的

Matlab scatter/plot绘制图时,单点的MarkerSize与空间位置的 Matlab scatter/plot绘制图时,单点的MarkerSize与空间位置的关系 scatter scatter(axes, x, y, sz, ‘Marker’, ‘o’); scatter()函数中参数sz决定’Marker’(即’o’)的标记面积(大小),默认单位是平方磅(poin…

[MATLAB学习笔记] MATLAB里 ‘Markersize’ 设置的值是‘Marker_size’

Markersize意思是标记尺寸&#xff0c;那么 Marker_size 的值代表的就是标记尺寸的大小。 例如在 plot 作图中&#xff0c;事先定义两个数据 x-pi:0.5:pi , ysin(x) ,运行作图命令 plot(x,y,o,Markersize,12) o 的意思为坐标点用圆圈标记&#xff0c;那么 Markersize 的意思…

Spring Authorization Server的使用

Spring Authorization Server的使用 一、背景二、前置知识三、需求四、核心代码编写1、引入授权服务器依赖2、创建授权服务器用户3、创建授权服务器和客户端 五、测试1、授权码流程1、获取授权码2、根据授权码获取token3、流程演示 2、根据刷新令牌获取token3、客户端模式4、撤…

SpringSecurityOAuth已停更,来看一看进化版本Spring Authorization Server

Spring Authorization Server是Spring Security OAuth的进化版本&#xff0c;Spring Security OAuth官方已经宣布“End of Life”了。Spring Security OAuth使用的是OAuth2.0标准而Spring Authorization Serve引入了对OAuth 2.1和OpenID Connect 1.0规范的支持&#xff0c;并提…

Spring Authorization Server1.0 介绍与使用

一、版本使用 1、Java&#xff1a;17或者更高的版本。 2、springboot 3.0 3、Spring Authorization Server 1.0版本。 <dependency><groupId>org.springframework.security</groupId><artifactId>spring-security-oauth2-authorization-server</ar…

curl php authorization,PHP CURL 执行 Authorization 请求

PHP CURL 扩展可以帮助我们快速实现HTTP请求。查看更多: 博客原文 在使用豆瓣OAuth登录接口时&#xff0c;我们需要发送这样的HTTP REQUEST 请求:GET /v2/user/~me HTTP/1.1 Host: https://api.douban.comAuthorization: Bearer a14afef0f66fcffce3e0fcd2e34f6ff4 在命令行中我…