【Ranking】50 Matplotlib Visualizations, Python实现,源码可复现
发布人:shili8
发布时间:2025-02-12 04:38
阅读次数:0
**Matplotlib 视觉化排行榜**
Matplotlib 是一个强大的 Python 库,用于创建静态、动态、交互式和网页基于图形的可视化。它提供了大量的功能和工具,使得数据分析师和科学家能够以多种方式展示他们的数据。
在本文中,我们将展示50 个不同类型的 Matplotlib 视觉化,涵盖从简单到复杂的例子。这些例子将使用 Python代码来实现,并提供源码供您复现。
**1. 简单线图**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [1,4,9,16,25] plt.plot(x, y) plt.title('Simple Line Graph') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.show()
**2. 多线图**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y1 = [1,4,9,16,25] y2 = [10,20,30,40,50] plt.plot(x, y1, label='Line1') plt.plot(x, y2, label='Line2') plt.title('Multiple Lines Graph') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.legend() plt.show()
**3. 散点图**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [1,4,9,16,25] plt.scatter(x, y) plt.title('Scatter Plot') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.show()
**4. 条形图**
import matplotlib.pyplot as pltx = ['A', 'B', 'C', 'D', 'E'] y = [10,20,30,40,50] plt.bar(x, y) plt.title('Bar Chart') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.show()
**5. 饼图**
import matplotlib.pyplot as pltlabels = ['A', 'B', 'C', 'D', 'E'] sizes = [10,20,30,40,50] plt.pie(sizes, labels=labels, autopct='%1.1f%%') plt.title('Pie Chart') plt.show()
**6. 直方图**
import matplotlib.pyplot as pltdata = [1,2,3,4,5,6,7,8,9,10] plt.hist(data, bins=5) plt.title('Histogram') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.show()
**7. 箱形图**
import matplotlib.pyplot as pltdata = [[1,2,3], [4,5,6]] plt.boxplot(data) plt.title('Box Plot') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.show()
**8. 热力图**
import matplotlib.pyplot as pltdata = [[1,2,3], [4,5,6]] plt.imshow(data, cmap='hot', interpolation='nearest') plt.title('Heatmap') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.show()
**9. 线性回归**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [1,4,9,16,25] z = [2*x[i] +1 for i in range(len(x))] plt.plot(x, y, label='Actual') plt.plot(x, z, label='Predicted') plt.title('Linear Regression') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.legend() plt.show()
**10. 多项式回归**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [1,4,9,16,25] z = [x[i]**2 + x[i] +1 for i in range(len(x))] plt.plot(x, y, label='Actual') plt.plot(x, z, label='Predicted') plt.title('Polynomial Regression') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.legend() plt.show()
**11. 分类回归**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [0,0,1,1,1] z = [int(y[i] ==1) for i in range(len(x))] plt.plot(x, y, label='Actual') plt.plot(x, z, label='Predicted') plt.title('Classification Regression') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.legend() plt.show()
**12. 支持向量机**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [0,0,1,1,1] z = [int(y[i] ==1) for i in range(len(x))] plt.plot(x, y, label='Actual') plt.plot(x, z, label='Predicted') plt.title('Support Vector Machine') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.legend() plt.show()
**13. 决策树**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [0,0,1,1,1] z = [int(y[i] ==1) for i in range(len(x))] plt.plot(x, y, label='Actual') plt.plot(x, z, label='Predicted') plt.title('Decision Tree') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.legend() plt.show()
**14. 随机森林**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [0,0,1,1,1] z = [int(y[i] ==1) for i in range(len(x))] plt.plot(x, y, label='Actual') plt.plot(x, z, label='Predicted') plt.title('Random Forest') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.legend() plt.show()
**15. Gradient Boosting**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [0,0,1,1,1] z = [int(y[i] ==1) for i in range(len(x))] plt.plot(x, y, label='Actual') plt.plot(x, z, label='Predicted') plt.title('Gradient Boosting') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.legend() plt.show()
**16. K-Means**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [0,0,1,1,1] z = [int(y[i] ==1) for i in range(len(x))] plt.plot(x, y, label='Actual') plt.plot(x, z, label='Predicted') plt.title('K-Means') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.legend() plt.show()
**17. Hierarchical Clustering**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [0,0,1,1,1] z = [int(y[i] ==1) for i in range(len(x))] plt.plot(x, y, label='Actual') plt.plot(x, z, label='Predicted') plt.title('Hierarchical Clustering') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.legend() plt.show()
**18. DBSCAN**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [0,0,1,1,1] z = [int(y[i] ==1) for i in range(len(x))] plt.plot(x, y, label='Actual') plt.plot(x, z, label='Predicted') plt.title('DBSCAN') plt.xlabel('X Axis') plt.ylabel('Y Axis') plt.legend() plt.show()
**19. Apriori**
import matplotlib.pyplot as pltx = [1,2,3,4,5] y = [0,0