前言
我在体验 华为云的 CodeArts Snap 时,第一个例子就是绘制三角函数图像,功能注释写的也很简单。
业务场景中,有一类就是需要产出各种二维图形的,比如,折线图、散点图、柱状图等。
为了提前积累业务素材,少不了用我的最佳智能学习伴读-CodeArts Snap,试试如何绘制这些二维图形。
折线图
介绍
折线图是排列在工作表的列或行中的数据可以绘制到折线图中。折线图可以显示随时间(根据常用比例设置)而变化的连续数据,因此非常适用于显示在相等时间间隔下数据的趋势。
功能注释
将题目转换成注释,录入到 py 文件中:
"""
绘制一个折线图:
1、X为月销量,Y为月份;
2、定义销量sales=[1200,1350,1100,790,890,990,1220,1330,1400,1500,600,600];
3、循环sales,X和Y分别添加月份和销量;
4、最终绘制成折线图。
:return:
"""
生成代码
在注释下方进行"回车"操作,CodeArts Snap 可以自动生成代码:
import matplotlib.pyplot as plt
def plot_sales(sales):plt.plot(sales, color='red', linewidth=2)plt.xlabel('Month')plt.ylabel('Sales')plt.show()
代码调用
定义 sales:
sales=[1200,1350,1100,790,890,990,1220,1330,1400,1500,600,600]
这个时候,可以手动输入打印结果的代码,也可以进行"回车"操作,因为回车之后,CodeArts Snap 都会快速的给出下一步的提示,准确度很高。
plot_sales(sales)
运行结果
散点图
介绍
用两组数据构成多个坐标点,考察坐标点的分布,判断两变量之间是否存在某种关联或总结坐标点的分布模式。散点图将序列显示为一组点。值由点在图表中的位置表示。类别由图表中的不同标记表示。散点图通常用于比较跨类别的聚合数据。
功能注释
将题目转换成注释,录入到 py 文件中:
"""
绘制一个散点图:
1、X为月销量,Y为月份;
2、定义销量sales=[1200,1350,1100,790,890,990,1220,1330,1400,1500,600,600];
3、循环sales,X和Y分别添加月份和销量;
4、最终绘制成散点图。
:return:
"""
生成代码
在注释下方进行"回车"操作,CodeArts Snap 可以自动生成代码:
import matplotlib.pyplot as plt
def plot_sales(sales):x = range(1, len(sales) + 1)plt.plot(x, sales, 'ro')plt.xlabel('月份')plt.ylabel('月份')plt.title('量线图')plt.show()
代码调用
定义 sales:
sales=[1200,1350,1100,790,890,990,1220,1330,1400,1500,600,600]
这个时候,可以手动输入打印结果的代码,也可以进行"回车"操作,因为回车之后,CodeArts Snap 都会快速的给出下一步的提示,准确度很高。
plot_sales(sales)
运行结果
柱状图
介绍
柱形图,又称长条图、柱状统计图、条图、条状图、棒形图,是一种以长方形的长度为变量的统计图表。长条图用来比较两个或以上的价值(不同时间或者不同条件),只有一个变量,通常利用于较小的数据集分析。长条图亦可横向排列,或用多维方式表达。
功能注释
将题目转换成注释,录入到 py 文件中:
"""
绘制柱状图:
1、设置图片名称为销量分析,设置X轴的标签名为月销量,设置Y轴的标签名为月份;
2、定义销量sales=[1200,1350,1100,790,890,990,1220,1330,1400,1500,600,600];
3、画柱状图。
:return:
"""
生成代码
在注释下方进行"回车"操作,CodeArts Snap 可以自动生成代码:
# 定义 量分析 数据
sales = [1100,1350,1100,790,890,990,1220,1330,1400,1500,600,600]
# 定义 量分析 数据
x = [i for i in range(1,len(sales)+1)]
# 定义 量分析 数据
y = [sales[i-1] for i in range(1,len(sales)+1)]
# 定义 量分析 数据
# 画 状图
plt.bar(x,y,align='center',color='red')
# 显示 图
plt.title('量分析')
plt.xlabel('月份')
plt.ylabel('量')
# 显示 图
plt.show()
代码调用
这次给到的代码很全面,可以直接运行。
运行结果
优化建议
不过,在体验过程中,也发现了一些使用上的不方便的地方,整理了几个优化建议。
1、功能准确性还有待提升
有时候会出现代码不全的情况,有时候,代码结尾出现一个多出来且没有写完全的"if"语句
2、功能匹配的精度还有待提升
有时候,代码会比注释描述的内容多很多,且会出现重复循环的代码。
总结
体验了 CodeArts Snap 绘图功能,使用很便捷。还在体验中学习了相关语法。
越来越感觉,CodeArts Snap 和我对它的印象很搭:
最佳智能学习伴读,提供沉浸式学习体验,助力充满能量的开发者。
不过,CodeArts Snap 对于不同图形的名称识别起来还不够准确,希望后面可以丰富一下名词库。
接下来,期待与CodeArts Snap一起创作更多可能。
作者:非职业「传道授业解惑」的开发者叶一一
简介:「趣学前端」、「CSS畅想」系列作者,华夏美食、国漫、古风重度爱好者,刑侦、无限流小说初级玩家。
如果看完文章有所收获,欢迎点赞👍 | 收藏⭐️ | 留言📝。