界面控件Kendo UI for Angular中文教程:如何构建带图表的仪表板?(一)

Kendo UI for Angular ListView可以轻松地为客户端设置一个带有图表列表的仪表板,包括分页、按钮选项、数字或滚动,以及在没有更多项目要显示时的通知等。Kendo UI for Angular是专用于Angular开发的专业级Angular组件。telerik致力于提供纯粹的高性能Angular UI组件,无需任何jQuery依赖关系。

Kendo UI for Angular 2024 Q3新版下载

当我们构建应用程序并希望显示数据列表时,表格和网格是很好的解决方案。然而有时也需要一种奇特的定制设计来显示数据,对于那些习惯Angular的开发人员来说,最常用的解决方案是使用@for或*ngFor。

@for和*ngFor指令非常强大,使我们能够遍历元素列表,并使用自定义的设计或组件。这就是我们大多数人使用它们的主要原因。然而,有时它们可能会有点限制。

当我们想突出显示第一个或最后一个元素、实现分页或添加滚动时,会发生什么?在这种情况下,我们必须自己实现所有这些功能,或者使用一个快速、简单和轻松的替代方案。

接下来我们将为大家展示一个真实的场景。

场景

我们需要为新客户创建一个演示,客户端希望在带有图表列表的仪表板中显示信息,这些图表将按country显示有关框架使用情况的数据。

客户端希望通过图表可视化数据,但也希望使用分页、按钮选项、数字或滚动,并在没有更多项目要显示时通知用户。还有一件比较重要的事情,客户想尽快得到demo !

我们首先想到的是使用Kendo UI for Angular Charts来可视化信息,并将其与@for结合起来迭代模拟数据。有了这个初步的方法,就可以开始行动了!

设置项目

首先,使用命令ng new listview-charts来设置Angular应用。

ng new listview-charts
cd listview-charts
npm install

(在生成过程中,选择CSS作为样式格式,目前拒绝使用SSG/ prerender。)

接下来,通过使用命令来注册安装Kendo UI for Angular Charts:

ng add @progress/kendo-angular-charts

想要充分利用Kendo UI for Angular,下载一个免费试用版,然后通过将Kendo UI license.txt文件复制到项目中来激活license,并将其重命名为Kendo - UI -license.txt,并运行以下命令:

npm install –save @progress/kendo-licensing
npx kendo-ui-license activate

好了,我们可以开始做这个项目了!

模拟数据

首先,用您喜欢的编辑器打开项目并复制示例data.ts文件到src/app/data/。它包含图表的模拟示例信息:

export const frameworkUsage = [
{
country: 'France',
data: [
{ framework: 'Angular', usage: 125, color: '#DD0031' },
{ framework: 'Vue', usage: 389, color: '#4FC08D' },
],
},
{
country: 'Canada',
data: [
{ framework: 'React', usage: 421, color: '#61DAFB' },
{ framework: 'Ember', usage: 96, color: '#F05E1B' },
],
},....

我们有了模拟数据,现在是时候构建Chart Stats组件了!

创建图表统计组件

图表统计组件将作为Kendo UI for Angular的封装器,只需要将数据作为输入传递,将其绑定到kendo-chart组件。首先通过在终端运行命令ng g c components/chart-stats,使用Angular CLI创建一个新组件。

ng g c components/chart-stats
CREATE src/app/components/chart-stats/chart-stats.component.css (0 bytes)
CREATE src/app/components/chart-stats/chart-stats.component.html (26 bytes)
CREATE src/app/components/chart-stats/chart-stats.component.spec.ts (621 bytes)
CREATE src/app/components/chart-stats/chart-stats.component.ts (253 bytes)

打开chart-stats.component.ts并导入ChartModule来访问Kendo UI Charts提供的所有组件,将使用类型为column的Kendo UI Chart,它需要三个字段:data、field和category,因此我将添加三个输入属性:

  • data:提供数据数组
  • field:要在Kendo UI Chart组件中绑定的字段
  • category:定义图表中用于类别标签(例如,用法)的数据字段。

chart-stats.component.ts中的代码是这样的:

import { Component, input } from '@angular/core';
import { ChartModule } from '@progress/kendo-angular-charts';@Component({
selector: 'app-chart-stats',
standalone: true,
imports: [ChartModule],
templateUrl: './chart-stats.component.html',
styleUrl: './chart-stats.component.css',
})
export class ChartStatsComponent {
data = input<Array<any>>([]);
field = input<string>('field');
category = input<string>('category');
}

打开chart-stats.component.html并从ChartModule中添加三个组件:kendo-chart, kendo-chart-series和kendo-chart-series-item。

在kendo-chart-series-item中,将类型设置为列,并将数据、字段和类别与信号属性绑定。

<kendo-chart>
<kendo-chart-series>
<kendo-chart-series-item
type="column"
[data]="data()"
[field]="category()"
[categoryField]="field()"
>
</kendo-chart-series-item>
</kendo-chart-series>
</kendo-chart>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/470802.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

UVC 输出视频格式修改和windows下数据分析

文章目录 前言一、UVC MJPEG视频帧描述符1.MJPG视频帧格式示例 二、UVC YUV2、NV12、M420、I420无压缩视频帧描述符GUID1.如YUV2数据参数初始为: 三、UVC Windows下UVC摄像头数据分析总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 项目需要&#…

大数据开发面试宝典

312个问题&#xff0c;问题涵盖广、从自我介绍到大厂实战、19大主题&#xff0c;一网打尽、真正提高面试成功率 一、Linux 1. 说⼀下linux的常⽤命令&#xff1f; 说一些高级命令即可 systemctl 设置系统参数 如&#xff1a;systemctl stop firewalld关闭防火墙 tail / hea…

更改Ubuntu22.04锁屏壁纸

更改Ubuntu22.04锁屏壁纸 sudo apt install gnome-shell-extensions gnome-shell-extension-manager安装Gnome Shell 扩展管理器后&#xff0c;打开“扩展管理器”并使用搜索栏找到“锁屏背景”扩展

GxtWaitCursor:Qt下基于RAII的鼠标等待光标类

有时我们需要以阻塞的方式执行一点耗时的操作&#xff0c;这时需要主窗口光标呈现忙状态&#xff0c;GxtWaitCursor正是为此设计&#xff1b;重载的构造函数&#xff0c;可以让光标呈现忙状态一定时间后自动恢复。 GxtWaitCursor.h #pragma once#include <QObject>// // …

Unity3D实现视频和模型融合效果

系列文章目录 unity工具 文章目录 系列文章目录👉前言👉一、效果展示如下👉二、VideoPlayer播放视频(一)👉2-1、Hieraechy面板右键创建videoPlayer👉2-2、Assets面板右键创建RenderTexture👉2-3、把设置好的RenderTexture拖到videoPlayer里面还有本地视频视频�…

探索Pillow库:Python图像处理的瑞士军刀

文章目录 **探索Pillow库&#xff1a;Python图像处理的瑞士军刀**1. 背景&#xff1a;为何选择Pillow&#xff1f;2. Pillow是什么&#xff1f;3. 如何安装Pillow&#xff1f;4. 五个简单的库函数使用方法4.1 打开图像4.2 显示图像4.3 转换图像格式4.4 调整图像大小4.5 旋转图像…

HelloMeme 上手即用教程

HelloMeme是一个集成空间编织注意力的扩散模型&#xff0c;用于生成高保真图像和视频。它提供了一个代码库&#xff0c;包含实验代码和预训练模型&#xff0c;支持PyTorch和FFmpeg。用户可以通过简单的命令行操作来生成图像和视频。 本文将详细介绍&#xff0c;如何在GPU算力租…

JVM详解:JVM的系统架构

计算机语言大致可以分为两类&#xff0c;一直是编译性语言&#xff0c;典型的如C&#xff0c;他会先有编译器编译成可执行文件&#xff08;操作系统可读&#xff0c;不同的操作系统需要编译成不同的可执行文件&#xff09;&#xff0c;而另一种则是翻译性语言&#xff0c;这种语…

21. Drag-Drop拖放操作(二) - 文件、表格和树的拖放实现

本了继上节内容&#xff0c;讲述几种常用的拖放场景示例&#xff0c;包括文件、表格和树的拖放实现。 文件拖放 实现从系统目录拖放文件到App中。 自定义接收视图 自定义应用内部接收拖放的view视图类FileDragView&#xff0c;注册拖放类型&#xff0c;实现目标拖放协议NS…

力扣515:在每个树行中找最大值

给定一棵二叉树的根节点 root &#xff0c;请找出该二叉树中每一层的最大值。 示例1&#xff1a; 输入: root [1,3,2,5,3,null,9] 输出: [1,3,9]示例2&#xff1a; 输入: root [1,2,3] 输出: [1,3]提示&#xff1a; 二叉树的节点个数的范围是 [0,104]-231 < Node.val &l…

vivo 游戏中心包体积优化方案与实践

作者&#xff1a;来自 vivo 互联网大前端团队- Ke Jie 介绍 App 包体积优化的必要性&#xff0c;游戏中心 App 在实际优化过程中的有效措施&#xff0c;包括一些优化建议以及优化思路。 一、包体积优化的必要性 安装包大小与下载转化率的关系大致是成反比的&#xff0c;即安装…

数据库SQL——连接表达式(JOIN)图解

目录 一、基本概念 二、常见类型 内连接&#xff08;INNER JOIN&#xff09;&#xff1a; 左连接&#xff08;LEFT JOIN 或 LEFT OUTER JOIN&#xff09;&#xff1a; 右连接&#xff08;RIGHT JOIN 或 RIGHT OUTER JOIN&#xff09;&#xff1a; 全连接&#xff08;FULL…

Sigrity SPEED2000 Power Ground Noise Simulation模式如何查看PDS系统的自阻抗操作指导

Sigrity SPEED2000 Power Ground Noise Simulation模式如何查看PDS系统的自阻抗操作指导 Sigrity Power SI Power Ground Noise Simulation模式可以用于PDS系统自阻抗分析,以下图为例 2D视图

uni-app移动端与PC端兼容预览PDF文件

过程遇到的问题 1、如果用的是最新的版本的pdfjs的话&#xff0c;就会报Promise.withResolvers 不是一个方法的错误&#xff0c;原因是Promise.withResolvers是ES15新特性&#xff0c;想了解可参考链接&#xff0c;这里的解决方案是将插件里的涉及到Promise.withResolvers的地…

「Py」Python基础篇 之 Python都可以做哪些自动化?

✨博客主页何曾参静谧的博客&#x1f4cc;文章专栏「Py」Python程序设计&#x1f4da;全部专栏「Win」Windows程序设计「IDE」集成开发环境「UG/NX」BlockUI集合「C/C」C/C程序设计「DSA」数据结构与算法「UG/NX」NX二次开发「QT」QT5程序设计「File」数据文件格式「UG/NX」NX定…

[ 网络安全介绍 5 ] 为什么要学习网络安全?

&#x1f36c; 博主介绍 &#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 _PowerShell &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 &#x1f389;点赞➕评论➕收藏 养成习…

在Java中使用ModelMapper简化Shapefile属性转JavaBean实战

目录 前言 一、原始的处理办法 1、使用Set方法来转换 2、使用构造方法转换 二、基于ModelMapper的动态转换 1、ModelMapper简介 2、集成到项目中 3、Shapefile属性读取 三、总结 前言 在现代软件开发中&#xff0c;尤其是在多层架构中&#xff0c;经常需要将数据从一个…

时间管理的三个痛点

时间管理方面&#xff0c;有三个痛点&#xff1a;不知道、不平衡、不安全。 很多人&#xff0c;忙了一天&#xff0c;感觉很累&#xff0c;但是不知道做了什么。他不知道&#xff0c;这一天工作了几个小时&#xff0c;做了哪些事&#xff0c;分别用了多少时间&#xff0c;只是…

封装el-menu

案例图 数据格式 commonMenu.vue <template><div class"commonMenuStyle"><el-sub-menu v-if"hasChildren" :index"item.MenuId"><template #title><el-icon><location /></el-icon><!-- isColl…

微服务day07

Elasticsearch 需要安装elasticsearch和Kibana&#xff0c;应为Kibana中有一套控制台可以方便的进行操作。 安装elasticsearch 使用docker命令安装&#xff1a; docker run -d \ --name es \-e "ES_JAVA_OPTS-Xms512m -Xmx512m" \ //设置他的运行内存空间&#x…