当前位置: 首页 > news >正文

数学建模--matplot.pyplot(结尾附线条样式表格)

matplotlib.pyplot绘图接口

1. 用法

导入模块
import matplotlib.pyplot as plt
import numpy as np  # 用于生成示例数据
绘制简单图表
# 生成数据
x = np.linspace(0, 10, 100)
y = np.sin(x)# 创建图形和坐标轴
plt.figure(figsize=(8, 4))  # 设置图表大小
plt.plot(x, y, label='sin(x)')  # 绘制曲线
plt.title('正弦函数')  # 添加标题
plt.xlabel('X轴')  # 添加x轴标签
plt.ylabel('Y轴')  # 添加y轴标签
plt.legend()  # 显示图例
plt.grid(True)  # 显示网格线
plt.show()  # 显示图表

2. 类型

折线图
plt.plot(x, y, color='blue', linewidth=2, linestyle='-', marker='o')
散点图
x = np.random.rand(50)
y = np.random.rand(50)
plt.scatter(x, y, s=50, c='red', alpha=0.6)
柱状图
categories = ['A', 'B', 'C', 'D']
values = [25, 40, 30, 15]
plt.bar(categories, values, color='skyblue')
直方图
data = np.random.normal(0, 1, 1000)
plt.hist(data, bins=30, alpha=0.7, color='purple')
饼图
sizes = [30, 25, 20, 15, 10]
labels = ['A', 'B', 'C', 'D', 'E']
plt.pie(sizes, labels=labels, autopct='%1.1f%%', startangle=90)

3. 多图布局

使用subplotsubplots在同一窗口显示多个图表:

fig, axes = plt.subplots(2, 2, figsize=(10, 8))  # 创建2x2网格# 绘制四个不同的图表
axes[0, 0].plot(x, np.sin(x))
axes[0, 1].scatter(x, np.random.rand(len(x)))
axes[1, 0].bar(categories, values)
axes[1, 1].hist(data, bins=30)plt.tight_layout()  # 自动调整布局
plt.show()

4. 样式

  • 颜色:使用名称(如'red')、十六进制码(如'#FF5733')或RGB值。
  • 线条样式linestyle='--'(虚线)、marker='x'(标记点)。
  • 字体设置
    plt.rcParams['font.size'] = 12  # 全局字体大小
    plt.title('标题', fontweight='bold')
    

保存图表

plt.savefig('my_plot.png', dpi=300, bbox_inches='tight')

以下是Matplotlib中常用的线条样式(linestyle参数)和标记样式(marker参数)的表格总结,方便你快速查阅:

样式表格(当然也建议访问官方文档)

1. 线条样式(linestyle)

代码描述示例效果
'-'实线─────────
'--'虚线----------
'-.'点划线-.-.-.-.-
':'点线:::::::::
''无线条(仅标记)

2. 标记样式(marker)

代码描述示例效果
'.'小点
'o'圆圈
's'正方形
'^'上三角形
'v'下三角形
'*'星形
'x'叉号
'+'加号
'D'菱形

3. 使用示例

import matplotlib.pyplot as plt
import numpy as npx = np.linspace(0, 10, 10)plt.figure(figsize=(10, 6))# 实线 + 圆圈标记
plt.plot(x, x, '-o', label='实线+圆圈')# 虚线 + 方形标记
plt.plot(x, x+1, '--s', label='虚线+方形')# 点划线 + 三角形标记
plt.plot(x, x+2, '-.^', label='点划线+三角形')# 点线 + 星形标记
plt.plot(x, x+3, ':*', label='点线+星形')plt.legend()
plt.show()

4. 线条属性补充

  • 线宽linewidthlw参数(如lw=2
  • 颜色color参数(如color='red'或简写c='r'
  • 透明度alpha参数(0-1之间,如alpha=0.5
http://www.lryc.cn/news/594354.html

相关文章:

  • 力扣 hot100 Day50
  • 10-day07文本分类
  • Node.js:常用工具、GET/POST请求的写法、工具模块
  • 《剥开洋葱看中间件:Node.js请求处理效率与错误控制的深层逻辑》
  • Node.js worker_threads 性能提升
  • 最新轻量美化表白墙系统源码v2.0 带后台版 附搭建教程
  • RxSwift-事件属性
  • 玄机——第六章 流量特征分析-蚂蚁爱上树
  • 全面解析 JDK 提供的 JVM 诊断与故障处理工具
  • Linux之dpkg--命令的用法
  • MySQL EXPLAIN 解读
  • linux shell从入门到精通(一)——为什么要学习Linux Shell
  • 【OD机试】池化资源共享
  • 小架构step系列20:请求和响应的扩展点
  • OPC UA, CAN, PROFINET, SOCKET, MODBUS, HTTP, S7七种物联网常用协议解释
  • 2.组合式API知识点(1)
  • 【并集查找 二分图】P6185 [NOI Online #1 提高组] 序列|省选-
  • JavaScript 对象操作、继承与模块化实现
  • 基于单片机的数字温度计设计
  • Ubuntu 部署 STUN 与 TURN 服务器
  • BLIP、InternVL Series(下)
  • 从TPACK到TPACK - AI:人工智能时代教师知识框架的重构与验证
  • 血条识别功能实现及原理
  • Mobile Neural Network (MNN) 3.2.1
  • CAN通讯理论与实践:调试和优化全讲解
  • EPLAN 电气制图(十): 继电器控制回路绘制(下)放料、放灰
  • UDP中的单播,多播,广播(代码实现)
  • 前端环境搭建---基于SpringBoot+MySQL+Vue+ElementUI+Mybatis前后端分离面向小白管理系统搭建
  • Linux场景常见的几种安装方式
  • VSCode使用Jupyter完整指南配置机器学习环境