基本统计图绘制
一、实验目的
熟练掌握扩展库matplotlib及其依赖库的安装了解matplotlib的绘图一般过程熟练掌握折线图的绘制与属性设置熟练掌握散点图的绘制与属性设置熟练掌握柱状图的绘制与属性设置熟练掌握饼状图的绘制与属性设置熟练掌握图例属性的设置了解保存绘图结果的方法二、实验内容
1. 获取鸢尾花数据第⼀个维度的所有数据,绘制单一箱线图。
import numpy as np import matplotlib.pyplot as plt import pandas as pd from sklearn.datasets import load_iris plt.rcParams['font.family'] = ['SimHei'] iris_data = load_iris() data = iris_data.data # 加载数据 data_1 = data[:, 0] # 第一维数据 df = pd.DataFrame(data_1) df.boxplot() plt.title("第1个维度的所有数据,绘制单一箱线图。") plt.show() 123456789101112
2. 绘制鸢尾花数据任意一条数据的条形图,横坐标为属性名(利用iris_data.feature_names可以显示属性名称),纵坐标单位cm,图名为鸢尾花数据条形图。
from sklearn.datasets import load_iris import matplotlib.pyplot as plt plt.rcParams['font.family'] = ['SimHei'] # 加载鸢尾花数据集 iris_data = load_iris() feature_names = iris_data.feature_names # 特征名称 # 假设选取数据集中的第一条数据进行可视化 sample_data = iris_data.data[0] # 绘制条形图 plt.figure(figsize=(10, 5)) plt.bar(feature_names, sample_data, width=0.7) plt.xlabel('属性名') plt.ylabel('属性值(cm)') plt.title('鸢尾花数据条形图 - 单一样本属性值') # 显示图形 plt.show()
123456789101112131415161718193. 绘制饼状图,给定四个属性:优秀,良好,及格,不及格;四个数据分别占比:15,45,30,10. 要求:在图上标注出数值和属性名,弹出良好的部分,(explode)
import matplotlib.pyplot as plt plt.rcParams['font.family'] = ['SimHei'] plt.figure(figsize=(7, 7)) ax=plt.axes([0.1,0.1,0.8,0.8])#建立轴的大小 labels='优秀','良好','及格','不及格' x=[15,45,30,10] explode=(0, 0.07, 0, 0)#这个是控制分离的距离的, plt.pie(x,labels=labels, explode=explode, startangle=60, autopct ='%1.1f%%') plt.title('饼状图') plt.show() 12345678910111213
4. 绘制折线图:随机生成数据,给定任意一个函数绘制折线图。
import numpy as np import random import matplotlib.pyplot as plt import pandas as pd plt.rcParams['font.family'] = ['SimHei'] plt.rcParams['axes.unicode_minus'] = False # 在1-50中随机选取20个不同的数 x1 = random.sample(range(1, 50), 20) x1.sort() plt.plot(x1, np.sin(x1)) plt.show() 1234567891011
5. 绘制直方图:取出鸢尾花数据第二个属性的所有值绘制直方图,横坐标 bins=10。
from sklearn.datasets import load_iris import matplotlib.pyplot as plt plt.rcParams['font.family'] = ['SimHei'] # 加载鸢尾花数据集 iris_data = load_iris() data_1 = iris_data.data[:, 1] # 取出第二个属性 plt.hist(data_1, bins=10, edgecolor='black') plt.ylabel('频数') plt.title('鸢尾花数据第二个属性的直方图') plt.show() 12345678910
6. 取出鸢尾花数据的第二和第三个属性的所有值,绘制散点图,横坐标为第二列的属性,纵坐标为
第三个属性。
from sklearn.datasets import load_iris import matplotlib.pyplot as plt plt.rcParams['font.family'] = ['SimHei'] fig, ax = plt.subplots() # 加载鸢尾花数据集 iris_data = load_iris() data_1 = iris_data.data[:, 1] # 第二列 data_2 = iris_data.data[:, 2] # 第三列 ax.scatter(data_1, data_2, c="blue", alpha=0.5) ax.grid(True) # 设置坐标轴标签 plt.xlabel('花萼宽度 (cm)') plt.ylabel('花瓣长度 (cm)') plt.show() 123456789101112131415
7. 绘制词云:找一段中文文本,保存为txt文件,测试如下代码:
import jieba from wordcloud import WordCloud import numpy as np import PIL import os def chinese_jieba(txt): wordlist_jieba = jieba.cut(txt) # 将⽂本分割,返回列表 txt_jieba = " ".join(wordlist_jieba) # 将列表拼接为以空格为间断的字符串 return txt_jieba stopwords = {'这些':0, '那些':0, '因为':0, '所以':0} #根据文本,可以自己增加,形式为 '词':0 alice_mask = np.array(PIL.Image.open('../../../Pictures/bizhi/ce329083a43b4526ac6129f8c651bae5.jpg')) with open('./文本.txt', encoding='utf8') as fp: txt = fp.read() cutted_text = chinese_jieba(txt) wordcloud = WordCloud(font_path = r'C:WindowsFontsSTKAITI.TTF', # 字 background_color = 'black', # 背景⾊ max_words = 180, # 最⼤显示单词数 max_font_size = 270, # 频率最⼤单词字体⼤⼩ mask = alice_mask, stopwords = stopwords # 过滤停⽤词 ).generate(cutted_text) image = wordcloud.to_image() image.show()
12345678910111213141516171819202122238. 利用numpy,计算属性距离:取出鸢尾花数据中的第一条和第二条样本数据,计算欧氏距离、曼哈顿距离和明可夫斯基距离(对明可夫斯基距离分别计算p1,2,3,4时的情况)
from sklearn.datasets import load_iris import matplotlib.pyplot as plt plt.rcParams['font.family'] = ['SimHei'] # 加载鸢尾花数据集 iris_data = load_iris() sample1 = iris_data.data[0] sample2 = iris_data.data[1] # 定义计算距离的函数 def euclidean_distance(vec1, vec2): return np.linalg.norm(vec1 - vec2) # l2范数 def manhattan_distance(vec1, vec2): return np.sum(np.abs(vec1 - vec2)) def minkowski_distance(vec1, vec2, p): return np.power(np.sum(np.abs(vec1 - vec2)**p), 1/p) # 计算欧氏距离 print("欧氏距离 :{:.4f}".format(euclidean_distance(sample1, sample2))) # 计算曼哈顿距离 print("曼哈顿距离:{:.4f}".format(manhattan_distance(sample1, sample2))) # 计算不同 p 值下的明可夫斯基距离 for p in [1, 2, 3, 4]: print("明可夫斯基距离 (p={}):{:.4f}" .format(p, minkowski_distance(sample1, sample2, p)))
1234567891011121314151617181920212223242526相关知识
这个数据分析工具花样有点多,看看统计图呈现方式
下表是“爱心小花店 一周内各种花卉的销售情况.先确定一格表示多少.然后把它画成条形统计图.花卉种类百合花郁金香玫瑰花康乃馨数量(枝)50653570 题目和参考答案——青夏教育精英家教网——
数据分析工具上实验.doc
使用pandas绘制两列csv的直方图
ai怎么绘制玫瑰花:详解AI绘制技巧与步骤
如图所示.学校为了提高绿化品位.美化环境.准备将一块周长为76米的长方形草地设计分成形状大小完全相同的九块长方形.种上各种花卉.经市场预测.牡丹花每平方米造价150元.玫瑰花每平方米造价135元.茉莉花每平方米造价130元.(1)求每个小长方形的长和宽,(2)学校计划投入5万元全部用于购买两种不同花卉.并设计上下四个长方形种上牡� 题目和参考答案——青夏教育精英家教网——
一个面积是120m2的花坛里种了三种花,各种花的种植面积百分比如下图。
水稻花药和花粉培养
用python turtle绘制一朵玫瑰花
AI如何绘制抽象的花朵图案 AI立体图案绘制技巧【详解】
网址: 基本统计图绘制 https://www.huajiangbk.com/newsview1548677.html
上一篇: 如图是学校花坛种花面积情况的统计 |
下一篇: Pyecharts 绘制各种统计 |
推荐分享

- 1君子兰什么品种最名贵 十大名 4012
- 2世界上最名贵的10种兰花图片 3364
- 3花圈挽联怎么写? 3286
- 4迷信说家里不能放假花 家里摆 1878
- 5香山红叶什么时候红 1493
- 6花的意思,花的解释,花的拼音 1210
- 7教师节送什么花最合适 1167
- 8勿忘我花图片 1103
- 9橄榄枝的象征意义 1093
- 10洛阳的市花 1039