问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

excel图表怎么用箭头线连接两个XY散点

发布网友 发布时间:2024-10-23 09:54

我来回答

1个回答

热心网友 时间:2024-11-03 17:27

本文介绍如何使用箭头线更加可视化地显示变化的方向,如图1所示。

图1
在Excel 2007及以后的版本中,通过设置系列3的箭头末端格式,很容易实现图1所示的效果。
下面,我们使用VBA来完成箭头线的绘制。
SubConnectTwoXYSeries()
Dim myCht As Chart
Dim mySrs1 As Series
Dim mySrs2 As Series
Dim Npts As Integer, Ipts As Integer
Dim myBuilder As FreeformBuilder
Dim myShape As Shape
Dim Ishp As Long
Dim Xnode1 As Double, Ynode1 As Double
Dim Xnode2 As Double, Ynode2 As Double
Dim Xmin As Double, Xmax As Double
Dim Ymin As Double, Ymax As Double
Dim Xleft As Double, Ytop As Double
Dim Xwidth As Double, Yheight As Double
‘ 必须先选取具有两个系列的图表
If ActiveChart Is Nothing Then
GoTo ExitSub
End If
If ActiveChart.SeriesCollection.Count < 2Then
GoTo ExitSub
End If
Set myCht = ActiveChart
Set mySrs1 = myCht.SeriesCollection(1)
Set mySrs2 = myCht.SeriesCollection(2)
Npts = mySrs1.Points.Count
‘ 两个系列必须具有相匹配数量的点
If mySrs2.Points.Count > Npts Then
GoTo ExitSub
End If
‘ 移除任何原先的连接箭头线
For Ishp = myCht.Shapes.Count To 1 Step -1
If Left(myCht.Shapes(Ishp).Name, 12) =”ArrowSegment” Then
myCht.Shapes(Ishp).Delete
End If
Next
Xleft = myCht.PlotArea.InsideLeft
Xwidth = myCht.PlotArea.InsideWidth
Ytop = myCht.PlotArea.InsideTop
Yheight = myCht.PlotArea.InsideHeight
Xmin = myCht.Axes(1).MinimumScale
Xmax = myCht.Axes(1).MaximumScale
Ymin = myCht.Axes(2).MinimumScale
Ymax = myCht.Axes(2).MaximumScale
For Ipts = 1 To Npts
‘ 第1个数据点
Xnode1 = Xleft + (mySrs1.XValues(Ipts) -Xmin) * Xwidth / (Xmax – Xmin)
Ynode1 = Ytop + (Ymax -mySrs1.Values(Ipts)) * Yheight / (Ymax – Ymin)
‘ 第2个数据点
Xnode2 = Xleft + (mySrs2.XValues(Ipts) -Xmin) * Xwidth / (Xmax – Xmin)
Ynode2 = Ytop + (Ymax -mySrs2.Values(Ipts)) * Yheight / (Ymax – Ymin)
‘ 绘制连接线
Set myShape = myCht.Shapes.AddLine(Xnode1,Ynode1, Xnode2, Ynode2)
‘ 命名并格式形状为箭头线
With myShape
.Name = “ArrowSegment” &CStr(Ipts)
With .Line
‘ 在这里可以使用你喜欢的格式
.ForeColor.SchemeColor = 12  ‘ 蓝色
.EndArrowheadLength = msoArrowheadLong
.EndArrowheadWidth =msoArrowheadWidthMedium
.EndArrowheadStyle =msoArrowheadTriangle
End With
End With
Next
ExitSub:
EndSub
在运行程序前,先要选择图表。
运行程序后的结果如图2所示。

图2
虽然在Excel 2007及以上的版本中,很容易实现这样的功能,但我们仍然试图使用VBA程序实现同样的效果。通过VBA程序,让我们进一步熟悉图表元素及图表编程的技术。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
宁德市有哪些区 福建宁德市有哪些区 宁德市有哪些商圈 安装项目错误: 项目文件不存在 (C:\Windows\SolidWorks\IM_20110-4 高压103低压98心跳104,医生初诊是脑梗,怎么治疗,吃什么药?饮食方面注 ... 最新版好玩的谐音梗网名210个 比较搞笑幽默的网名 德国猎梗FCI标准 “流泉百折玉琮琤”的出处是哪里 “细听犀谈座为倾”的出处是哪里 “西蜀东吴一世英”的出处是哪里 在 本地计算机 无法启动 Windows Installer 服务。 启动windows installer 显示错误2 系统找不到指定文件。怎么办? 在... ...installer无法启动,提示是错误2:系统找不到指定的文件,这 机顶盒怎么调到电视上? 公务员 县级市的发展改革局科员 还有县级市的政府办公室科员 哪个职 ... 给县委书记写材料好,还是给副县长当秘书好? 什么垫子狗狗咬不坏 给县委书记当秘书要去吗? 狗狗为什么咬着一块布 冰冻食品怎么煮才好吃窍门速冻食品如何煮 函授十大最吃香的专业是什么 一级建造师挂靠有没有年龄限制 一建报考有年龄限制吗? 2024女生函授大专学什么专业好就业 2024千万别去函授这几个专业 学前教育函授的有用吗 2010莫文蔚昆明回蔚演唱会公交车上宣传视频哩那首歌交什么名字? 最近昆明公交车上放的那首男女合唱的歌叫什么名字 好想有一句你是我... 请问昆明公交车上放的一首歌 是说唱 背景音乐是来自 蔡依林的 LOVE LOVE... 这段时间昆明的公交车上经常放的一个音乐排行榜都是什么歌啊,我只记 上海火车站、上海南站、上海虹桥站分别位于哪里? 电控整流器电控整流器的工作 windows modules installer无法启动,提示是错误2:系统找不到指定的... 小孩子不想上幼儿园该怎样引导? ...无法启动,提示是错误2:系统找不到指定的文件,这 烟台南山学院外国语学院办学特色 烟台南山学院都有哪些学院? 山东烟台南山学院外国语学院日语系在哪个校区? note3呼叫转移设置时为什么出现‘网络有意外响应’ 历史上像闻一多的人? 历史上像闻一多一样的人还有很多你能列举出一个人物并简述他的... ...K2 智跑 狮跑 秀尔 福瑞迪 赛拉图 正在热卖中 价格实惠 服务贴心... 发男童闻脚照幼师已被停职,幼师的做法存在什么不良影响? 中医教你观脸色识健康! 开机显示entering bios什么意思? 我现在是高中生,初一我跟我闺蜜绝交了,我孤独在学校熬完了初中,有严重... ...人变的越来越消极。之前开朗的性格都没了,在学校不想说任何话。别 ... 电脑按f1进入bios是什么意思? 注册会计师每门需要多少时间 我是一个18岁的女生,高中生活我过得比较孤独,朋友比较少,性格是有