""" matplotlib训练营 """ import numpy as np from matplotlib import pyplot as plt import matplotlib # fname 为 你下载的字体库路径,注意 SourceHanSansSC-Bold.otf 字体的路径,此处是把字体文件和当前执行文件放在同一目录 zhfont1 = matplotlib.font_manager.FontProperties(fname="SourceHanSansSC-Bold.otf") def main(): #simpleLine() #simpspot() #simpleWaveLine() #manyImageShow() #simpleBar() scaterImage() def simpleLine(): """ 直线方程 :return: """ x = np.arange(1, 10) y = 2 * x + 10 plt.title("simple line demo") #引入中文字体,默认不识别 plt.xlabel("X轴", fontproperties=zhfont1) plt.ylabel("Y") plt.plot(x, y) plt.show() def simpspot(): """ 蓝色散点图 :return: 字符 描述 '-' 实线样式 '--' 短横线样式 '-.' 点划线样式 ':' 虚线样式 '.' 点标记 ',' 像素标记 'o' 圆标记 'v' 倒三角标记 '^' 正三角标记 '<' 左三角标记 '>' 右三角标记 '1' 下箭头标记 '2' 上箭头标记 '3' 左箭头标记 '4' 右箭头标记 's' 正方形标记 'p' 五边形标记 '*' 星形标记 'h' 六边形标记 1 'H' 六边形标记 2 '+' 加号标记 'x' X 标记 'D' 菱形标记 'd' 窄菱形标记 '|' 竖直线标记 '_' 水平线标记 以下是颜色的缩写: 字符 颜色 'b' 蓝色 'g' 绿色 'r' 红色 'c' 青色 'm' 品红色 'y' 黄色 'k' 黑色 'w' 白色 """ x = np.arange(1, 10) y = 2 * x + 10 plt.title("simple line demo") #引入中文字体,默认不识别 plt.xlabel("X轴", fontproperties=zhfont1) plt.ylabel("Y轴", fontproperties=zhfont1) #ob,参数在上边说明 plt.plot(x, y,"ob") plt.show() def simpleWaveLine(): """ 简单正玄波 :return: """ #arange的参数从1-10π,x取值的间隔是每隔0.1 x = np.arange(1,10 * np.pi,0.1) y = np.sin(x) plt.title("simple wave line demo") #引入中文字体,默认不识别 plt.xlabel("X轴", fontproperties=zhfont1) plt.ylabel("Y轴", fontproperties=zhfont1) plt.plot(x, y) plt.show() def manyImageShow(): """ 多个图展示在同一个坐标中 :return: """ #arange的参数从1-10π,x取值的间隔是每隔0.1 x = np.arange(0,10 * np.pi,0.1) y = np.sin(x) y2 = np.cos(x) y3 = 0.1 * x plt.title("simple wave line demo") #引入中文字体,默认不识别 plt.xlabel("X轴", fontproperties=zhfont1) plt.ylabel("Y轴", fontproperties=zhfont1) # 建立 subplot 网格,高为 2,宽为 1 ,第三个参数为是否在一个坐标中显示 # 激活第一个 subplot plt.subplot(2,1,1) plt.plot(x, y,linewidth="4",linestyle=":") #图1和图2坐标不共用 plt.subplot(2, 1, 2) #图1和图2坐标共用,可以求出两条线的交点 #plt.subplot(2, 1, 1) plt.plot(x, y2, label="wave") plt.subplot(2, 1, 2) #图2和图3坐标共用,可以求出两条线的交点 plt.plot(x, y3, label="line") #开启图形标签,label 生效 plt.legend(loc='upper left') plt.show() def simpleBar(): """ 条形图展示 :return: """ x = [5,8,11] y = [11,8,5] x2 = [6,9,13] y2 = [7,12,15] plt.bar(x,y,align ="center") plt.bar(x2,y2,color ="red", align ="center") plt.title("simple bar") plt.xlabel("X") plt.ylabel("Y") plt.show() def scaterImage(): """ 散点图 :return: """ n = 100 x = np.random.normal(0,1,n) y = np.random.normal(0,1,n) plt.plot(x,y,"o") plt.show() if __name__ == '__main__': main()
基于matplotlib绘制线性、散点、条形图案
本文是一篇关于matplotlib库使用的教程,包括直线、散点图、正弦波形、多图显示、条形图和散点图的绘制。通过示例代码展示了如何设置字体、颜色、线型以及坐标轴标签等,帮助理解matplotlib的基本操作。
摘要由CSDN通过智能技术生成