赞
踩
折线图是一种常用的可视化图表,可以清晰地展示数据随时间或其他连续变量的变化趋势,通过连接数据点,可以观察到数据的上升、下降、波动等变化趋势,帮助人们更直观地理解数据的变化规律。
- import matplotlib.pyplot as plt
-
- # 准备数据
- x = [1, 2, 3, 4, 5] # x轴数据
- y = [2, 6, 1, 3, 10] # y轴数据
-
- # 设置字体
- plt.rcParams['font.family']='Times New Roman, SimSun'
- # 绘制折线图
- plt.plot(x, y)
-
- # 添加标题和坐标轴标签
- plt.title('折线图示例')
- plt.xlabel('X轴')
- plt.ylabel('Y轴')
-
- # 显示图形
- plt.show()
结果如下图所示:
- plt.plot(x, y,color='red',linestyle='--',marker='*')
- x:横坐标数据
- y:纵坐标数据
- color:折线的颜色
- character color
- ========== ========
- 'b' blue
- 'g' green
- 'r' red
- 'c' cyan
- 'm' magenta
- 'y' yellow
- 'k' black
- 'w' white
- linestyle:折线的类型,默认为实线
- ``'-'`` 实线样式
- ``'--'`` 虚线样式
- ``'-.'`` 点划线样式
- ``':'`` 点虚线样式
- marker:数据点的标记样式,默认为空
- 三角形 '^'
- 五角星 '*'
- 圆圈 'o'
- 加号 '+'
- 缩写形式:plt.plot(x, y,'*:r')
- 注:引号内的不区分顺序,但是颜色需要用缩写
-
-
- 其他的一些参数:
- 参数 linewidth 用以控制线条宽度(默认值为0.5)
- 参数 alpha=0.5 用以控制线条透明度
- 参数 markersize 用以控制标记大小
- 参数 markeredgecolor 用以控制标记的轮廓颜色
- 参数 markerfacecolor 用以控制标记的填充颜色
- import matplotlib.pyplot as plt
-
- # 月份
- x1 = ['2017-01', '2017-02', '2017-03', '2017-04', '2017-05', '2017-06', '2017-07', '2017-08',
- '2017-09', '2017-10', '2017-11', '2017-12']
- # 体重
- y1 = [86, 85, 84, 80, 75, 70, 70, 74, 78, 70, 74, 80]
-
- # 设置画布大小
- plt.figure(figsize=(10, 7))
- # 设置字体
- font1 = {'family': 'Times New Roman', 'weight': 'normal', 'size': 14}
- plt.rc('font', **font1)
- # 绘图
- plt.plot(x1, y1, label='weight changes', linewidth=3, color='r', marker='o',
- markerfacecolor='blue', markersize=14)
- # 标题
- plt.title("my weight", fontproperties=font1)
- # 横坐标描述
- plt.xlabel('month', fontproperties=font1)
- # 纵坐标描述
- plt.ylabel('weight', fontproperties=font1)
- # 设置数字标签
- for a, b in zip(x1, y1):
- plt.text(a, b+0.5, b, ha='center', va='bottom', fontproperties=font1)
- # 设置图例
- plt.legend()
- plt.show()
这段代码添加了画布大小设置、字体设置、数字标签设置以及图例设置,结果如下:
- import matplotlib.pyplot as plt
- import seaborn as sns
-
- x = ["周一", "周二", "周三", "周四", "周五", "周六", "周日"]
- highest = [12, 15, 18, 14, 16, 14, 10]
- lowest = [6, 4, 8, 12, 10, 9, 7]
-
- plt.plot(x, highest, "rs--", label="最高气温")
- plt.plot(x, lowest, "rd--", label="最低气温")
- for a, b in zip(x, highest):
- plt.text(a, b+1, b, ha='center', va='bottom')
- # 数据显示的横坐标、显示的位置高度、显示的数据值的大小
- for a, b in zip(x, lowest):
- plt.text(a, b-2, b, ha='center', va='bottom')
-
- # 绘图风格设置,使用seaborn库的API来设置样式
- sns.set_style('darkgrid')
- # # 设置字体
- font1 = {'family': 'SimSun', 'weight': 'normal', 'size': 14}
- plt.rc('font', **font1)
- plt.rcParams["axes.unicode_minus"] = False
-
- # x轴刻度标签设置
- plt.xticks(x, fontproperties=font1)
- # y轴标签数值范围设置
- plt.ylim(0, 25)
- # 标题设置
- plt.title("一周气温变化趋势", fontproperties=font1)
- plt.xlabel("星期", fontproperties=font1)
- plt.ylabel("气温", fontproperties=font1)
- # 图例设置
- plt.legend()
- plt.show()
这段代码对绘图的风格、x轴刻度标签的字体、y轴刻度标签的范围进行了设置,结果如下:
本人读研期间发表6篇SCI数据挖掘相关论文,现在某研究院从事数据算法相关科研工作,对Python有一定认知和理解,会结合自身科研实践经历不定期分享关于Python、机器学习、深度学习、人工智能系列基础知识与应用案例。致力于只做原创,以最简单的方式理解和学习,关注我一起交流成长。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。