数据可视化——重要类型图形绘制

1.散点图 :直观表现影响因素和预测对象之间的总体关系趋势,反映变量间关系的变化形态,以便决定用何种数学表达式来模拟变量之间的关系。(包含数据越多,比较效果越好)

示例:

import matplotlib as mlp
import matplotlib.pyplot as plt
x = [10,20,30,40,50,60,70,80,90,100]
y = [20,55,15,30,40,55,66,72,45,80]
plt.scatter(x,y)

      

2.折线图

Series 和 DataFrame 都有一个plot属性,用于生成一些基本的图形,默认情况下,plot生成的是折线图

示例:

import numpy as np
import pandas as pd
s1 = pd.Series(np.random.randn(10).cumsum(),
index = np.arange(0,1000,100))
s1.plot()

数据帧DataFrame的plot方法会把每一列数据绘制成一条折线图

示例:

import numpy as np
import pandas as pd
data1 = pd.DataFrame(np.random.randn(10 ,4).cumsum(0),
                     
                     columns = ['A','B','C','D'],
                     index = np.arange(0,1000,100)) #生成维度10行4列的[0,1)范围之间的随机数;生成索引:[0,1000),步长为100
data1.plot()
#cumsum()计算轴向元素累加和,np.cumsum(a,0) == a.cumsum(0),传入参数0,即axis = 0,按照行相加

3.饼状图:使用该图的情况如下:

1)仅有一个要绘制的数据序列

2)要绘制的数值没有负值

3)要绘制的数值几乎没有零值

4)类别数目不超过七个

5)各类别分别代表整个饼状图的一部分

实例:

import matplotlib as mlp
import matplotlib.pyplot as plt
x = [10,30,50,80,100]
col1 = ['tomato','silver','orange','coral','pink']
lab1 = ['A','B','C','D','E']  #设置数据标签
plt.pie(x,colors = col1,labels = lab1) #绘图

                                      

 

4.直方图:该图由竖立在X轴上的相邻矩形组成,矩阵面积与样本发生频率成正比,pyplot提供了一个名为 hist 的特殊函数,该函数除绘制直方图外,其返回值的元组还是直方图计算的结果,它足以提供一系列的作为参数值的样本和要划分的桶数,然后计算每个桶的事件

示例:

复制代码
#创建新的系列用于直方图的绘制
import matplotlib.pyplot as plt
import numpy as np
s2 = np.random.randint(0,100,100)
plt.hist(s2,bins=10,color = 'pink') #调用hist函数绘制直方图


In[11]: s2
Out[11]: 
array([11, 84, 25, 30,  7, 16, 53, 23, 45,  5, 18, 73, 39, 61, 82, 20, 31,
       25, 94, 84, 70, 95, 28, 13, 86, 78, 17, 41, 60, 28, 79, 52,  0, 98,
       73, 63, 99, 56, 44, 53, 92, 30, 89, 34, 53, 53, 35, 52, 57, 18, 82,
       42, 25, 29, 60, 49, 17, 51, 18, 55, 43, 62, 54, 29, 32, 62, 45, 75,
       44, 69, 99, 66, 12, 50, 62,  5, 99, 91, 63, 52, 23, 76, 20, 36, 48,
        5, 87, 29, 57,  0, 33, 57,  3,  2, 85, 65, 33, 82, 70, 30])
复制代码

5.热度图:可清楚的看到数据的变化情况以及变化过程中的最大值和最小值,在对变量进行相关分析时常常用到

示例:

复制代码
import numpy as np
import seaborn as sns
np.random.seed(12345) #seed随机数种子,参数不变生成的随机数不变
data = np.random.rand(5,6)
#a = sns.heatmap(data)
b = sns.heatmap(data,annot = True)
c = sns.heatmap(data,cmap = "OrRd") #cmap参数设置用来指定显示的颜色


In[20]:data
Out[20]: 
array([[0.92961609, 0.31637555, 0.18391881, 0.20456028, 0.56772503,
        0.5955447 ],
       [0.96451452, 0.6531771 , 0.74890664, 0.65356987, 0.74771481,
        0.96130674],
       [0.0083883 , 0.10644438, 0.29870371, 0.65641118, 0.80981255,
        0.87217591],
       [0.9646476 , 0.72368535, 0.64247533, 0.71745362, 0.46759901,
        0.32558468],
       [0.43964461, 0.72968908, 0.99401459, 0.67687371, 0.79082252,
        0.17091426]])
复制代码

 

posted @   TY_uni  阅读(149)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
点击右上角即可分享
微信分享提示