核心概念:标记由哪些部分组成?
在开始操作前,我们先明确一下“标记”通常包含哪些属性,这样你就能知道可以修改什么:
- 标记样式:标记的形状,如圆形、方形、菱形、星形等。
- 标记大小:标记的尺寸。
- 标记填充颜色:标记内部的颜色。
- 标记边框颜色:标记边缘线条的颜色。
- 标记边框宽度:标记边缘线条的粗细。
掌握了这些,你就可以自由组合,创建出独特的标记样式。
Python (Matplotlib)
Matplotlib 是 Python 中最基础、最灵活的绘图库,更改标记主要通过 plot()
函数的参数实现。
基础语法
plt.plot(x, y, marker='样式', markersize=大小, markerfacecolor='填充色', markeredgecolor='边框色', markeredgewidth=边框宽度)
常用标记样式代码
代码 | 样式 | 名称 |
---|---|---|
'o' |
● | 圆形 |
's' |
■ | 方形 |
'^' |
▲ | 上三角 |
'v' |
▼ | 下三角 |
'D' |
♦ | 菱形 |
★ | 星形 | |
➕ | 加号 | |
'x' |
✖ | 叉号 |
• | 点 |
完整代码示例
import matplotlib.pyplot as plt import numpy as np # 准备数据 x = np.linspace(0, 10, 20) y1 = np.sin(x) y2 = np.cos(x) # 创建图表和坐标轴 fig, ax = plt.subplots(figsize=(10, 6)) # 绘制第一条折线,使用红色圆形标记 ax.plot(x, y1, color='red', marker='o', # 标记样式:圆形 markersize=8, # 标记大小:8 markerfacecolor='yellow', # 标记填充色:黄色 markeredgecolor='black', # 标记边框色:黑色 markeredgewidth=1.5, # 标记边框宽度:1.5 linestyle='--', # 折线样式:虚线 linewidth=2, # 折线宽度:2 label='Sine Wave') # 绘制第二条折线,使用绿色星形标记 ax.plot(x, y2, color='green', marker='*', # 标记样式:星形 markersize=10, # 标记大小:10 markerfacecolor='lightgreen', # 填充色:浅绿色 markeredgecolor='darkgreen', # 边框色:深绿色 markeredgewidth=1, # 边框宽度:1 linestyle='-', # 折线样式:实线 linewidth=2, label='Cosine Wave') 标签和图例 ax.set_title('Customized Markers in Matplotlib', fontsize=16) ax.set_xlabel('X-axis', fontsize=12) ax.set_ylabel('Y-axis', fontsize=12) ax.legend() ax.grid(True, linestyle=':') # 显示图表 plt.show()
效果图
(运行上述代码会得到如下图表)
Excel
Excel 的操作非常直观,通过右键菜单即可完成。
操作步骤
- 绘制折线图:首先选中你的数据,插入一个折线图。
- 选中数据系列:单击图表中的任意一条折线,以选中该数据系列,你会看到所有数据点上都出现了标记。
- 打开“设置数据点格式”:
- 方法一(推荐):右键单击选中的折线,在弹出的菜单中选择 “设置数据系列格式”。
- 方法二:选中折线后,在顶部的 Excel 菜单栏中会出现 “图表设计” 和 “格式” 选项卡,在 “格式” 选项卡中,找到 “数据系列” 组,点击右侧的小箭头。
- 修改标记属性:在右侧弹出的 “设置数据系列格式” 窗格中,点击 “填充与线条” 图标(一个带填充色的油漆桶图标)。
- 标记选项:在这里你可以选择 “内置” 或 “内置”,然后从列表中选择你想要的标记样式(圆形、方形、三角形等)。
- 标记填充:可以设置标记的内部颜色。
- 标记边框:可以设置标记的边框颜色、宽度和样式。
- 标记大小:通过滑块直接调整标记的大小。
JavaScript (ECharts)
ECharts 是一个功能强大的数据可视化库,配置项非常灵活。
基础语法
在 ECharts 的 series
配置中,通过 symbol
、symbolSize
、itemStyle
等属性来控制标记。
symbol
:标记的样式,可以是'circle'
,'square'
,'triangle'
,'diamond'
,'star'
等。symbolSize
:标记的大小,可以是数字或数组(如[宽, 高]
)。itemStyle
:一个对象,用于设置标记的样式,包含color
(填充色)和borderColor
(边框色)、borderWidth
(边框宽度)等。
完整代码示例
<!DOCTYPE html> <html> <head> <meta charset="utf-8">ECharts Markers</title> <!-- 引入 ECharts 文件 --> <script src="https://cdn.jsdelivr.net/npm/echarts@5.4.3/dist/echarts.min.js"></script> </head> <body> <!-- 为 ECharts 准备一个具备大小(宽高)的 DOM --> <div id="main" style="width: 800px;height:400px;"></div> <script type="text/javascript"> // 基于准备好的dom,初始化echarts实例 var myChart = echarts.init(document.getElementById('main')); // 指定图表的配置项和数据 var option = { title: { text: 'Customized Markers in ECharts' }, tooltip: {}, legend: { data: ['Series A', 'Series B'] }, xAxis: { data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] }, yAxis: {}, series: [ { name: 'Series A', type: 'line', // 数据 data: [120, 200, 150, 80, 70, 110, 130], // 标记配置 symbol: 'triangle', // 标记样式:三角形 symbolSize: 15, // 标记大小:15 itemStyle: { color: 'blue', // 填充色 borderColor: 'darkblue', // 边框色 borderWidth: 2 // 边框宽度 } }, { name: 'Series B', type: 'line', data: [100, 180, 140, 90, 60, 100, 120], // 标记配置 symbol: 'diamond', // 标记样式:菱形 symbolSize: 20, // 标记大小:20 itemStyle: { color: 'orange', // 填充色 borderColor: 'red', // 边框色 borderWidth: 3 // 边框宽度 } } ] }; // 使用刚指定的配置项和数据显示图表。 myChart.setOption(option); </script> </body> </html>
效果图
(在浏览器中打开 HTML 文件会得到如下图表)
总结与最佳实践
工具 | 关键函数/菜单 | 核心参数/选项 |
---|---|---|
Python (Matplotlib) | plt.plot() |
marker , markersize , markerfacecolor , markeredgecolor , markeredgewidth |