c语言和python哪个吃香
各位读者,小编来为大家解答,c语言和python哪个更容易学 c语言跟python语言哪个难,现在让我们一起来看看吧!大家好,小编为大家解答基于python的图表生成系统的问题。很多人还不知道python做图表的模块有哪些,现在让我们一起来看看吧!
各位读者,小编来为大家解答,c语言和python哪个更容易学 c语言跟python语言哪个难,现在让我们一起来看看吧!
大家好,小编为大家解答基于python的图表生成系统的问题利用python实现小项目。很多人还不知道python做图表的模块有哪些,现在让我们一起来看看吧!
案例01 在python中制作简单的图表
import matplotlib.pyplot as plt # 导入matplotlib模块
x = [1, 2, 3, 4, 5, 6] # 给出x坐标的数据
y = [2, 4, 6, 8, 10, 12] # 给出y坐标的数据
(x, y, color = 'red', linewidth = 3, linestyle = 'solid') # 绘制折线图
() # 显示绘制的图表
运行结果:
知识延伸
1、plot()是Matplotlib模块的函数,用于绘制折线图。
语法格式:
plot(x,y,color,linewidth,linestyle)
折线的颜色python创意作品。Matplotlib模块支持多种格式定义的颜色,常用的有
用颜色的单词或其简写定义的8种基础颜色用RGB值的浮点数元组定义的颜色,RGB值通常是用0~255的十进制整数表示的用RGB值的十六进制字符串定义的颜色,如‘#33FF00’,其与(51,255,0)是相同的RGB颜色,可以搜索“十六进制颜色码转换工具”来获取更多颜色linewidth折线的粗细linestyle折线的类型。用特定含义的字符串表示,如:实线用‘-’或‘solid’表示
2、show()是Matplotlib模块的函数,用于显示绘制的图表。
在python中绘制柱形图
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5, 6]
y = [50, 60, 80, 78, 95, 70]
(x, y, width = 0.8, align = 'center', color = 'blue') # 绘制柱形图
()
运行结果:
bar()就是Matplotlib模块中用于制作柱形图的函数。
语法格式:
bar(x,height,width=0.8,bottom=None,align='center',color,edgecolor,linewidth)
在python中绘制条形图
import matplotlib.pyplot as plt
x = [1, 2, 3, 4]
y = [60, 25, 78, 50]
(x, y, align = 'center', color = 'blue') # 绘制条形图
()
运行结果:
barh()就是Matplotlib模块中用于绘制条形图的函数。
语法格式:
barh(y,width,height=0.8,left=None,align='center',color,edgecolor,linewidth)
条形的位置与y坐标的关系。默认值为‘center’,表示条形与y坐标居中对齐;如为‘edge’,表示条形的底部与y坐标对齐
color条形的填充颜色edgecolor条形的边框颜色linewidth条形的边框粗细
在python中制作饼图
import matplotlib.pyplot as plt
x = [25, 45, 69, 30, 80, 12]
(x) # 根据x坐标值绘制饼图
()
运行结果:
案例02 在python中导入Excel数据制作简单的图表——销售业绩表.xlsx
导入数据制作柱形图
import pandas as pd
import matplotlib.pyplot as plt
import xlwings as xw
df = pd.read_excel('销售业绩表.xlsx') # 从指定工作簿中读取数据
figure = plt.figure() # 创建一个绘图窗口
plt.rcParams['-serif'] = ['SimHei'] # 为图表中的中文文本设置默认字体,以避免中文显示乱码问题
plt.rcParams['axes.unicode_minus'] = False # 解决坐标值为负数时无法正常显示负号的问题
x = df['月份'] # 指定“月份”列为x坐标的值
y = df['销售额'] # 指定“销售额”列为y坐标的值
(x, y, color = 'black') # 制作柱形图
app = (visible = False) # 启动Excel程序
workbook = ('销售业绩表.xlsx') # 打开要插入图表的工作簿
worksheet = workbook.sheets['销售业绩'] # 选中要插入图表的工作表
(figure, left = 500) # 在工作表中插入柱形图
()
workbook.close()
()
运行结果:
知识延伸
SimHei是黑体的英文名称,如果想使用其他字体,可参考如下的常用字体名称中英文对照表
导入数据制作散点图
import pandas as pd
import matplotlib.pyplot as plt
import xlwings as xw
df = pd.read_excel('销售业绩表.xlsx')
figure = plt.figure()
plt.rcParams['-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x = df['月份']
y = df['销售额']
plt.scatter(x, y, s = 500, color = 'red', marker = '*') # 制作散点图
app = (visible = False)
workbook = ('销售业绩表.xlsx')
worksheet = workbook.sheets['销售业绩']
(figure, left = 500)
()
workbook.close()
()
运行结果:
scatter()是Matplotlib模块中用于制作散点图的函数,参数marker用于设置散点图中每个点的形状。
导入数据制作面积图
import pandas as pd
import matplotlib.pyplot as plt
import xlwings as xw
df = pd.read_excel('销售业绩表.xlsx')
figure = plt.figure()
plt.rcParams['-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x = df['月份']
y = df['销售额']
plt.stackplot(x, y, colors = 'red') # 制作面积图
app = (visible = False)
workbook = ('销售业绩表.xlsx')
worksheet = workbook.sheets['销售业绩']
(figure, left = 500)
()
workbook.close()
()
运行结果:
stackplot()是Matplotlib模块中用于制作面积图的函数。
语法格式:
stackplot(x,y,labels,colors)
案例03 在python中制作组合图表——销售业绩表1.xlsx
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_excel('销售业绩表1.xlsx')
plt.rcParams['-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x = df['月份'] # 指定数据中的“月份”列为x坐标的值
y1 = df['销售额'] # 指定数据中的“销售额”列为y坐标的第1组值
y2 = df['利润'] # 指定数据中的“利润”列为y坐标的第2组值
(x, y1, color = 'black', linewidth = 4) # 用x坐标和第1组y坐标制作折线图
(x, y2, color = 'blue') # 用x坐标和第2组y坐标制作柱形图
()
运行结果:
知识延伸
组合图表的制作和单个图表的制作方法基本相同,区别在于单个图表中的x和y坐标的值都只有一组,而组合图表的x坐标的值可能会被两组y坐标的值共用,或者y坐标的值会被两组x坐标的值共用。在制作组合图表时,只需要为图表设置两组x坐标值或两组y坐标值,然后制作两个图表即可。
制作双折线图
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_excel('销售业绩表1.xlsx')
plt.rcParams['-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x1 = df['月份']
y1 = df['销售额']
y2 = df['利润']
(x1, y1, color = 'red', linewidth = 3, linestyle = 'solid')
(x1, y2, color = 'black', linewidth = 3, linestyle = 'solid')
()
运行结果:
案例04 添加并设置图表标题和坐标轴标题——销售业绩表.xlsx
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_excel('销售业绩表.xlsx')
plt.rcParams['-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x = df['月份'] # 指定数据中的“月份”列为x坐标的值
y = df['销售额'] # 指定数据中的”销售额“列为y坐标的值
(x, y, color = 'black') # 制作柱形图
plt.title(label = '各月销售额对比图', fontdict = {'family' : 'KaiTi', 'color' : 'red', 'size' : 20}, loc = 'left') # 添加并设置图表标题
plt.xlabel('月份', fontdict = {'family' : 'SimSun', 'color' : 'black', 'size' : 15}, labelpad = 10) # 添加并设置x轴标题
plt.ylabel('销售额', fontdict = {'family' : 'SimSun', 'color' : 'black', 'size' : 15}, labelpad = 10) # 添加并设置y轴标题
()
运行结果:
知识延伸
1、title()是Matplotlib模块中的函数,用于给图表添加和设置标题。
语法格式:
title(label,fontdict=None,loc='center',pad=None)
2、xlabel()和ylabel()是Matplotlib模块中的函数,分别用于添加和设置x、y轴的标题。
语法格式:
xlabel/ylabel(label,fontdict=None,labelpad=None)
添加图例
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_excel('销售业绩表.xlsx')
plt.rcParams['-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x = df['月份']
y = df['销售额']
(x, y, color = 'red', label = '销售额') # 制作柱形图并设置图例名
plt.legend(loc = 'upper left', fontsize = 20) # 添加并设置图例
()
运行结果:
legend()是Matplotlib模块中的函数,用于为图表添加并设置图例。
语法格式:
legend(loc,fontsize,facecolor,edgecolor,shadow=False)
案例05 添加并设置数据标签——销售业绩表.xlsx
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_excel('销售业绩表.xlsx')
plt.rcParams['-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x = df['月份']
y = df['销售额']
(x, y, color = 'red', linewidth = 3, linestyle = 'solid') # 制作折线图
for a,b in zip(x, y):
(a, b, b, fontdict = {'family' : 'KaiTi', 'color' : 'red', 'size': 20}) # 添加并设置数据标签
()
运行结果:
知识延伸
1、zip()是python的内置函数,它以可迭代的对象作为参数,将对象中对应的元素打包成一个元组,然后返回由这些元组组成的列表。
语法格式:
zip([iterable,…])
iterable:指一个或多个可迭代的对象
2、text()是Matplotlib模块中的函数,用于为图标添加并设置数据标签。
语法格式:
text(x,y,s,fontdict=None)
设置y轴的取值范围
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_excel('销售业绩表.xlsx')
plt.rcParams['-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x = df['月份']
y = df['销售额']
(x, y, color = 'red', linewidth = 3, linestyle = 'solid')
(0, 1200000) # 设置y轴的取值范围
for a,b in zip(x, y):
(a, b, b, fontdict = {'family' : 'KaiTi', 'color' : 'red', 'size': 20})
()
运行结果:
ylim()是Matplotlib模块中用于为图表设置y轴取值范围的函数。
语法格式:
ylim(num1,num2)
参数:
num1:y轴的最小值
num2:y轴的最大值
案例06 为组合图表添加并设置次坐标——销售业绩表2.xlsx
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_excel('销售业绩表2.xlsx')
plt.rcParams['-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x = df['月份'] # 指定数据中的”月份“列为坐标的值
y1 = df['销售额'] # 指定数据中的”销售额“列为y坐标的第1组值
y2 = df['同比增长'] # 指定数据中的”同比增长“列为y坐标的第2组值
(x, y1, color = 'grey', label = '销售额') # 制作柱形图
plt.legend(loc = 'upper left', fontsize = 20) # 为柱形图添加和设置图例
plt.twinx() # 为图表设置双坐标轴
(x, y2, color = 'black', linewidth = 3, label = '同比增长') # 制作折线图
plt.legend(loc = 'upper right', fontsize = 20) # 为折线图添加和设置图例
()
运行结果:
twinx()是Matplotlib模块中的函数,用于为图表设置双坐标轴。该函数没有参数,可直接使用。
添加并设置网格线——销售业绩表.xlsx
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_excel('销售业绩表.xlsx')
plt.rcParams['-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x = df['月份']
y = df['销售额']
(x, y, color = 'black', linewidth = 3, linestyle = 'solid')
(b = True, axis = 'y', color = 'red', linestyle = 'dashed', linewidth = 1) # 为y轴添加并设置网格线
()
运行结果:
grid()是Matplotlib模块中的函数,用于为图表添加并设置网格线。
语法格式:
grid(b,which,axis,color,linestyle,linewidth)
使用Python制作简单的图表并设置图表元素,这些案例中使用到的数据文件请点击这里 【GPT改写】使用Python制作简单的图表并设置图表元素所用到的数据.zip资源-CSDN文库
原文地址1:https://blog.csdn.net/nbhkk/article/details/136433879
参考资料:python中用turtle画一个圆形 https://blog.csdn.net/SXIAOYAN_/article/details/140061099

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)