散点图是一种数据可视化的一种类型,显示了两个变量之间的关系。它们对于数据集中的趋势,簇和异常值特别有用。没有正确的工具,创建这些图可能是一个乏味的过程,通常需要广泛的编码和设计技能。
>一个可以让您快速创建复杂图的库是绘制的。 Plotly是一个图形库,可以轻松在线创建交互式出版物质量图。它提供了一系列情节类型和样式,其交互性是创建散点图的理想选择。钥匙要点
对于香草JavaScript:您可以直接在html中包含绘图:
然后将其导入您的React组件:
<span><span><span><script</span> src<span>="https://cdn.plot.ly/plotly-latest.min.js"</span>></span><span><span></script</span>></span></span>
创建一个基本的散点图
<span>npm install plotly.js-dist-min</span>让我们从一个基本的散点图开始。
>在浏览器中打开HTML文件后,您的基本散点图应像下面的一个。
>本教程涵盖了与情节创建散点图的基础知识,包括设置您的环境,创建基本的绘图,通过其他功能增强它并使其具有互动性。 >实验这些示例,并探索Plotly的文档,以获取更高级的功能和自定义选项。如果您正在寻找有关如何创建出色数据可视化的信息,我们在此处提供一份方便的指南。
关于plitly > Tooltips可以增强用户体验。在Plotly中,您可以通过在跟踪对象中设置文本属性来添加工具提示。您还可以使用HoverInfo和HoverTemplate属性来自定义这些工具的内容和外观。 是的,Plotly提供了各种格式导出图表的功能。您可以将可视化作为静态图像(例如PNG或JPEG)作为报告,也可以作为可以嵌入网页中的交互式HTML文件保存。这对于与可能无法访问情节环境的其他人共享洞察力特别有用。 策略经过设计,可以有效地管理大型数据集。它使用WebGL进行渲染,即使有大量数据,它也有助于保持性能。但是,性能可能会受到数据集的复杂性和用户的系统功能的影响。 可以通过跟踪对象中的标记属性来定制散点图中标记的外观。这包括颜色,大小甚至标记符号的选项。您可以根据数据在静态或动态上设置这些属性,以获得更具洞察力的可视化。 Plotly提供了几个功能,以使散点图更容易访问,包括用于设置描述标题,轴标签和文本注释的选项。此外,您可以控制对比度和颜色选择,以容纳视力障碍的用户。
<span><span><span><script</span> src<span>="https://cdn.plot.ly/plotly-latest.min.js"</span>></span><span><span></script</span>></span></span>
<span>npm install plotly.js-dist-min</span>
>运行npm在您的React项目中开始,您应该看到与此类似的内容:
>您可以通过添加更多轨迹,自定义标记并添加注释来增强散点图。<span>import <span>Plotly</span> from 'plotly.js-dist-min';</span>
自定义标记:
<span>const data = [{
</span> <span>x: [1, 2, 3, 4],
</span> <span>y: [10, 15, 13, 17],
</span> <span>mode: 'markers',
</span> <span>type: 'scatter'
</span><span>}];
</span>
<span>const layout = {
</span> <span>title: 'Basic Scatter Plot',
</span> <span>xaxis: { title: 'X-Axis' },
</span> <span>yaxis: { title: 'Y-Axis' }
</span><span>};
</span>
<span>Plotly.newPlot('myDiv', data, layout);</span>
创建一个交互式散点图
交互式散点图允许用户直接参与数据点。<span>import <span>React</span> from 'react';
</span><span>import <span>Plot</span> from 'react-plotly.js';
</span>
<span>function <span>ScatterPlot</span>() {
</span> <span>const data = [{
</span> <span>x: [1, 2, 3, 4],
</span> <span>y: [10, 15, 13, 17],
</span> <span>mode: 'markers',
</span> <span>type: 'scatter'
</span> <span>}];
</span>
<span>const layout = {
</span> <span>title: 'Basic Scatter Plot',
</span> <span>xaxis: { title: 'X-Axis' },
</span> <span>yaxis: { title: 'Y-Axis' }
</span> <span>};
</span>
<span>return <span><span><Plot</span> data<span>={data}</span> layout<span>={layout}</span> /></span>;
</span><span>}
</span>
<span>export default ScatterPlot;</span>
看到笔
Binara Prabhanga的Vanilla(@binara-prabhanga)
在Codepen上。
<span>const trace1 = {
</span> <span>x: [1, 2, 3, 4],
</span> <span>y: [10, 15, 13, 17],
</span> <span>mode: 'markers',
</span> <span>type: 'scatter',
</span> <span>name: 'Dataset 1'
</span><span>};
</span>
<span>const trace2 = {
</span> <span>x: [2, 3, 4, 5],
</span> <span>y: [16, 5, 11, 9],
</span> <span>mode: 'markers',
</span> <span>type: 'scatter',
</span> <span>name: 'Dataset 2'
</span><span>};
</span>
<span>const data = [trace1, trace2];
</span>
<span>Plotly.newPlot('myDiv', data);</span>
要查看散点图,请查看此codesandbox demo。
总结
如果您想查看这些图表的代码,这是我的代码和盒子演示。
的常见问题
>可以将其与React以外的框架一起使用吗?绝对。情节是通用的,可以与各种JavaScript框架和库集成,例如Angular,vue.js,甚至是Python,用于使用DASH的服务器端渲染。
以上是用图制作互动散点图的详细内容。更多信息请关注PHP中文网其他相关文章!