Charting APIs have their place, but embedded analytics platforms are often a better way to create interactive, visual experiences in your applications. Credit: Thom Masat modified by IDG Comm. If you develop applications that share data with users, you’re likely to have requirements to present a graph, chart, dashboard, or other data visualization embedded in the application. This capability helps users better understand the data and discover insights, and it improves the user experience. When people see well-designed data visualizations, they use the application more and are more satisfied with the results. As a developer, you might be excited to develop charts and graphs with code, and there are plenty of charting frameworks you can use to customize data visualizations. But before you embark on approaches that require frameworks, libraries, and coding, I recommend looking at data visualization tools that have embedded analytics features. Modern data visualization tools not only make it easier to create the visualizations, but often provide the capabilities to embed them in, or deliver them directly through, a web or mobile application. [ Also on InfoWorld: How to choose a data analytics platform ] By contrast, even though visualization libraries may be easy to use for the developer, they may not be an optimal development approach for embedding analytics where frequent iterations are required. This is especially the case in areas like journalism and marketing, where the goal is to let users design, develop, and publish data visualizations without requiring support from developers and technologists. Criteria: How to choose data visualization tools with embedded analytics capabilities Many data visualization tools—including Tableau, Microsoft Power BI, Looker, Sisense, GoodData, Qlik, and ThoughtSpot—offer data visualization embedding capabilities. If your organization already uses one of these tools, start there. If not, try prototyping and proof-of-concept deployments with several tools to learn their capabilities. Prototypes can help you validate chart types, evaluate the ease of developing data visualizations, and determine whether the application integration options, security configurations, and operational requirements mesh with your environment. Here’s a detailed list of considerations when reviewing embedded analytics capabilities: Do the chart types meet business needs? Data visualization tools compete on the breadth and variety of their chart types, as well as on the flexibility of their configuration. If your organization wants to make extensive use of box and whisker plots, make sure the tool not only has this chart type but that it can be used in the ways the organization requires. Do the layout capabilities and device compatibility meet your needs? When you embed a visualization, you need to review how it fits and interacts within the layout(s) of your application. The visualization should take advantage of the full screen and responsively adjust for mobile device layouts. How easy is it to integrate? Review whether the platform’s approaches to embed analytics into applications meet business needs and are easy to implement. For easy integration, there should be simple embed codes to drop the visualization into HTML, but you should also review the APIs in case additional flexibility is required. For example, if you want to pass parameters from the application to the data visualization, you’ll want to make sure this level of API is exposed. In addition, many applications require some form of authentication, so validate that the platform’s integrations easily work with your single-sign-on services. Can you extend the platform with interactivity and workflow? After you embed a visualization, verify whether it meets business requirements. In addition to checking functionality built into the platform, like changing sort orders, selecting the metrics used in visualizations, choosing which columns to display in a table, or switching between chart types, you’ll want to verify you can extend the platform’s functionality in the ways that you need, especially if you want users to update the underlying data. Explore the platform’s full capabilities and future technical directions because some of the data visualization platforms allow developers to extend visual capabilities using APIs. Is the security configurable for the required end-user entitlements? If you are building applications where different groups and users need access to different data views, review how the platform enables row-level and column-level security. Verify that the user login can trigger the data entitlements and that visualizations properly adjust for the accessible data. You also want to see whether the platform has admin-level tools to review visualizations as different users and validate whether visualizations reflect the proper data entitlements. Do visualizations perform fast enough to be embedded in an application? Performance expectations vary depending on how end-users leverage the visualizations in analysis and workflow. When a data visualization is accessed by a user of a BI application, there is typically a higher tolerance for latency because the users are more sensitized to the quantity of data and the complexity of the analytics. By contrast, users of applications in which data visualizations are only part of the user experience are likely to have greater expectations of snappy performance. Further, in the case of visualizations embedded in public-facing web pages that require search-engine optimization, fast page loads are critically important to ensure page rank is not penalized by a slow visual. How “real-time” are your data requirements? Related to performance is whether the platform enables real-time access to data sources or whether computing analytics on cached or aggregated data is sufficient. There’s often a trade-off between real-time data availability, performance, and implementation complexity, so having the controls to switch from real-time to scheduled updates and validating performance are required for larger data sets. Are the development capabilities flexible and scalable? When you incorporate embedded analytics in an application development cycle, you want to ensure the embedded analytics platform fits your requirements for version control, development, deploying workflow, testing practices, and continuous integration. Are the platform’s pricing and total costs aligned with your business model? Most data visualization platforms have upfront costs and per-user charges. If you’re going to embed a visualization and provide access to thousands of users, make sure the pricing and costs are aligned with the application’s usage model. Modeling the costs is particularly important when visualizations are embedded in customer-facing applications because the data visualization platform’s per-user charge could amount to a significant percentage of your total expenses. One main consideration is whether business stakeholders are willing to define user experiences and designs that match the platform capabilities. Standardizing on visualizations provided by these platforms is often a benefit because best practices in chart types, color schemes, labeling, etc. are typically baked in. However, if stakeholders are firmly locked in to specific design and functional requirements, it may make it difficult to meet their needs with a data visualization platform. Under these circumstances, teams should look at one of the many data visualization libraries available to develop the visuals. Review integrations from embedded analytics platforms Data visualization platforms offer different ways to embed analytics. Most support HTML embed codes as the simplest way to insert a chart or dashboard into a web application. Products that offer a SaaS hosting option can often be used to give customers direct access to interactive dashboards. If more customizations and interactivity are required, data visualization platforms generally offer REST APIs, JavaScript toolkits, and cloud services to support these requirements. Here’s a sample of what you can find from the top data visualization platform vendors. Tableau’s embedded analytics playbook includes iframe, JavaScript and REST APIs, single sign-on (SSO) integrations, and mobile templates. Microsoft Power BI supports a REST API with JavaScript examples. Organizational embeds can be used to integrate with Microsoft Teams, Sharepoint, and Dynamics, while Power BI Embedded is an Azure service that enables sharing dashboards with customers. Looker’s extension program includes an extension SDK, an embed SDK, and Looker visualizations developed as React UI components. ThoughtSpot Extended Enterprise Edition includes embedded charts and pinboards, a data REST API, runtime filters, and a metadata API. Sisense supports iframe embedding, an embed SDK, and the SisenseJS JavaScript library, which allows developers to embed Sisense components in web pages without the use of iframes. The company provides an online “playground” to try capabilities. Other good options include Qlik, GoodData, and Domo. Whatever approach or platform you select, embedding analytics is a powerful way to share data and insights with users. Related content feature 14 great preprocessors for developers who love to code Sometimes it seems like the rules of programming are designed to make coding a chore. Here are 14 ways preprocessors can help make software development fun again. By Peter Wayner Nov 18, 2024 10 mins Development Tools Software Development feature Designing the APIs that accidentally power businesses Well-designed APIs, even those often-neglected internal APIs, make developers more productive and businesses more agile. By Jean Yang Nov 18, 2024 6 mins APIs Software Development news Spin 3.0 supports polyglot development using Wasm components Fermyon’s open source framework for building server-side WebAssembly apps allows developers to compose apps from components created with different languages. By Paul Krill Nov 18, 2024 2 mins Microservices Serverless Computing Development Libraries and Frameworks news Go language evolving for future hardware, AI workloads The Go team is working to adapt Go to large multicore systems, the latest hardware instructions, and the needs of developers of large-scale AI systems. By Paul Krill Nov 15, 2024 3 mins Google Go Generative AI Programming Languages Resources Videos