更改 Matplotlib 中的线条不透明度
在本文中,我们将学习如何在 Matplotlib 中创建线条不透明度。让我们讨论一些概念:
- 折线图或折线图可能是一种将信息显示为由线段连接起来的称为“标记”的一系列知识点的图表。折线图通常不会在不同轴上找到两个数据集之间的关系;例如 X、Y。
- Matplotlib 允许您使用 alpha 属性调节图形的透明度。
- 默认情况下,alpha=1。
- 如果您想让图表更透明,那么您可以将 alpha 设为 1,例如 0.5 或 0.25。
- 如果你想让图表不那么透明,那么你可以让 alpha 大于 1。这巩固了图表,使它不那么透明,更厚更密,可以这么说。
方法:
- 导入库 (Matplotlib)
- 导入/创建数据。
- 绘制具有不透明度的图形(线)。
示例 1:(带有不透明度的简单折线图)
Python3
# importing libraries
import matplotlib.pyplot as plt
# create data
x = [1, 2, 3, 4, 5]
y = x
# plot the graph
plt.plot(x, y, linewidth=10, alpha=0.2)
plt.show()
Python3
# importing libraries
import matplotlib.pyplot as plt
import numpy as np
# create data
x = np.array([-2, -1, 0, 1, 2])
y1 = x*0
y2 = x*x
y3 = -x*x
# plot the graph
plt.plot(x, y2, alpha=0.2)
plt.plot(x, y1, alpha=0.5)
plt.plot(x, y3, alpha=1)
plt.legend(["op = 0.2", "op = 0.5", "op = 1"])
plt.show()
Python3
# importing libraries
import matplotlib.pyplot as plt
import numpy as np
# create data
x = [1, 2, 3, 4, 5]
# plot
for i in range(10):
plt.plot([1, 2.8], [i]*2, linewidth=5, color='red', alpha=0.1*i)
plt.plot([3.1, 4.8], [i]*2, linewidth=5, color='green', alpha=0.1*i)
plt.plot([5.1, 6.8], [i]*2, linewidth=5, color='yellow', alpha=0.1*i)
plt.plot([7.1, 8.8], [i]*2, linewidth=5, color='blue', alpha=0.1*i)
for i in range(10):
plt.plot([1, 2.8], [-i]*2, linewidth=5, color='red', alpha=0.1*i)
plt.plot([3.1, 4.8], [-i]*2, linewidth=5, color='green', alpha=0.1*i)
plt.plot([5.1, 6.8], [-i]*2, linewidth=5, color='yellow', alpha=0.1*i)
plt.plot([7.1, 8.8], [-i]*2, linewidth=5, color='blue', alpha=0.1*i)
plt.show()
输出 :
示例 2:(具有不同不透明度的线条)
蟒蛇3
# importing libraries
import matplotlib.pyplot as plt
import numpy as np
# create data
x = np.array([-2, -1, 0, 1, 2])
y1 = x*0
y2 = x*x
y3 = -x*x
# plot the graph
plt.plot(x, y2, alpha=0.2)
plt.plot(x, y1, alpha=0.5)
plt.plot(x, y3, alpha=1)
plt.legend(["op = 0.2", "op = 0.5", "op = 1"])
plt.show()
输出 :
示例 3:(具有多个不透明度的多线图)
蟒蛇3
# importing libraries
import matplotlib.pyplot as plt
import numpy as np
# create data
x = [1, 2, 3, 4, 5]
# plot
for i in range(10):
plt.plot([1, 2.8], [i]*2, linewidth=5, color='red', alpha=0.1*i)
plt.plot([3.1, 4.8], [i]*2, linewidth=5, color='green', alpha=0.1*i)
plt.plot([5.1, 6.8], [i]*2, linewidth=5, color='yellow', alpha=0.1*i)
plt.plot([7.1, 8.8], [i]*2, linewidth=5, color='blue', alpha=0.1*i)
for i in range(10):
plt.plot([1, 2.8], [-i]*2, linewidth=5, color='red', alpha=0.1*i)
plt.plot([3.1, 4.8], [-i]*2, linewidth=5, color='green', alpha=0.1*i)
plt.plot([5.1, 6.8], [-i]*2, linewidth=5, color='yellow', alpha=0.1*i)
plt.plot([7.1, 8.8], [-i]*2, linewidth=5, color='blue', alpha=0.1*i)
plt.show()
输出 :