1、Matplotlib水印
import matplotlib.pyplot as pltimport numpy as npx = np.linspace(0.0,10,40)y = np.random.randn(40)plt.plot(x, # X轴数据 y, # Y轴数据 ls="-", # 线条样式 lw=2, # 线条宽度 marker="o", # x轴Y轴对应数据点的样式 ms=20, # 数据点的大小 mfc="orange", # 数据点填充颜色 alpha=0.6) # 数据点的透明度plt.grid(ls=":", # 网格样式(虚线) color="gray", # 网格颜色 alpha=0.5) # 网格透明度plt.text(x=1, # 水印开头左下角对应的X点 y=2, # 水印开头左下角对应的Y点 s="Matplotlib", # 水印文本 fontsize=50, # 水印大小 color="gray", # 水印颜色 alpha=0.5) # 水印是通过透明度控制的plt.show()
![29decff7d4e0f4fc4db4ef54c370fd33.png](https://i-blog.csdnimg.cn/blog_migrate/dae0e356488902a1834e97a270adab71.jpeg)
2、桑基图
import matplotlibimport matplotlib.pyplot as pltfrom matplotlib.sankey import Sankey# 显示中文标识matplotlib.rcParams["font.sans-serif"] = ["SimHei"]matplotlib.rcParams["axes.unicode_minus"] = False# 消费收入与支出数据flows = [0.2,0.1,0.4,0.3,-0.6,-0.05,-0.15,-0.2]# 数据标签来源labels = ["卖白菜","卖萝卜","卖肉","卖烟","买鞋","买衣服","买苹果","买书"]# 1表示流量显示在上方,0表示流量显示在水平位置,-1表示流量显示在下方orientations = [1,1,0,-1,1,-1,1,0]# 通过Sankey创建一个基本的桑基图对象sankey = Sankey()# 为桑基图添加绘制数据sankey.add(flows=flows, # 收入支出数据 labels=labels, # 数据标签 orientations=orientations, # 每个数据显示在上方或者下方或者水平 color="r", # 桑基图边缘线条颜色 fc="lightgreen", # 桑基图填充颜色 patchlabel="生活消费", # 桑基图标题 alpha=0.7) # 桑基图透明度# 桑基图基本绘制完成对象diagrams = sankey.finish()diagrams[0].texts[4].set_color("r") # 数据标签来源下标为4设置为红色diagrams[0].texts[4].set_weight("bold") # 数据标签来源下标为4字体设置加粗diagrams[0].text.set_fontsize(20) # 生活消费的字号大小diagrams[0].text.set_fontweight("bold") # 生活消费字体加粗plt.title("日常生活中的开支流量图")plt.show()
![e475332d7c35b3d59702d8851d7de3e0.png](https://i-blog.csdnimg.cn/blog_migrate/6b10e18e7289a5ddb67160a6f02eb5b8.jpeg)