sunburst-chart | sunburst interactive chart web component | Data Visualization library

 by   vasturiano JavaScript Version: 1.19.2 License: MIT

kandi X-RAY | sunburst-chart Summary

kandi X-RAY | sunburst-chart Summary

sunburst-chart is a JavaScript library typically used in Analytics, Data Visualization, D3 applications. sunburst-chart has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. You can install using 'npm i sunburst-chart' or download it from GitHub, npm.

[NPM package][npm-img]][npm-url] [Build Size][build-size-img]][build-size-url] [NPM Downloads][npm-downloads-img]][npm-downloads-url]. . An interactive sunburst chart for representing hierarchical data, where each data node of a tree is represented by an annular segment within multi-layered rings. Clicking on an arc focuses the view on the associated sub-tree, enabling a gradual exploration of the data. Clicking in the chart’s center zooms out one level, while clicking on the canvas resets the zoom level to the root view. The chart also responds to data changes by animating the arcs of each of the nodes into their new positions. By default the arcs areas are linearly proportional to their data values, resulting in a decrease of the thickness of the outer layers in a quadratic fashion. This can however be customized using the radiusScaleExponent method. For improved performance, arcs smaller than a given threshold (minSliceAngle) are excluded from the DOM, allowing for representation of large data sets while maintaining a smooth interaction. See [here for an example] of a randomly generated large data structure. See also the [Icicle] [Circle Pack] and [Treemap] charts.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              sunburst-chart has a low active ecosystem.
              It has 244 star(s) with 78 fork(s). There are 11 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 45 open issues and 43 have been closed. On average issues are closed in 121 days. There are 1 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of sunburst-chart is 1.19.2

            kandi-Quality Quality

              sunburst-chart has no bugs reported.

            kandi-Security Security

              sunburst-chart has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

            kandi-License License

              sunburst-chart is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              sunburst-chart releases are not available. You will need to build from source code and install.
              Deployable package is available in npm.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of sunburst-chart
            Get all kandi verified functions for this library.

            sunburst-chart Key Features

            No Key Features are available at this moment for sunburst-chart.

            sunburst-chart Examples and Code Snippets

            No Code Snippets are available at this moment for sunburst-chart.

            Community Discussions

            QUESTION

            Plotly: Add parallel features in sunburst with sizes proportionate to parent class
            Asked 2021-Jun-09 at 17:57

            In a plotly sunburst chart, I want to add multiple child classes to a parent class. I have tried assigning values to names, parents, values as shown here. But it returns a blank figure. I tried making a path variable (in the code below) but I am not sure how to name multiple direct children to a single parent class. Here is what I want-

            And here is the code to reproduce-

            ...

            ANSWER

            Answered 2021-Jun-09 at 17:57

            As you have seen, there are two ways to create sunburst plots with px.sunburst(). Either using the path variable or using the names, parents and values variables.

            The first variant with the path variable is suitable for rectangular data, and thus not suitable for you, because you have missing values. Although there is a possibility for rectangular data with missing values, it requires that the parents of missing values do not have other entries (plotly ref).

            Thus, you have to go with the second variant. As you have some leaves with identical names, you need in addition to names, parents and values also to define a list ids with unique strings.

            Source https://stackoverflow.com/questions/67888158

            QUESTION

            How to control the color input of a Sunburst with plotly.graph_objects?
            Asked 2021-Apr-04 at 11:55

            I would like to have control over the colors of each label in the Sunburst diagram below - when using plotly.graph_objects instead of plotly.express.

            See example from documentation below:

            ...

            ANSWER

            Answered 2021-Apr-03 at 11:09

            That would allow accessing and control the markers:

            Source https://stackoverflow.com/questions/66922130

            QUESTION

            It is possible to edit single categories fontsize and color with px.sunburst?
            Asked 2021-Feb-07 at 13:51

            I created a nice px.sunburst graph. Now I want to format the single "nodes" of the sunburst. For instance I want to change fontsize of the main "node" and make it bold or change the color of a specific "node".

            Unfrotunately I did not find such features in the Sunburst documentation.

            uniformtext only formats the whole text and with color and color_discrete_map I cannot control single nodes:

            Pseude Code:

            ...

            ANSWER

            Answered 2021-Feb-07 at 13:51

            To change the color of these sunburst's nodes separately you need to set color='character'. Keeping your discrete map this would result in:

            For the font size, I'd let plotly work this out, because behind the scenes it's adjusting font size so that it can fit in its area. That being said, you can set a font size several ways to maybe achieve what your looking for:

            Using fig.update_traces(textfont=dict(size=[20])) will set the first item's font size.

            To adjust more nodes expand the array as necessary to align with items in character, for instance:

            fig.update_traces(textfont=dict(family=['Arial','Courier New'],size=[8,20,8]))

            will set the second item in character to Courier New it's font to 20 and the first and third elements font size to 8.

            Finally, to bring it all together (and this may depend on what fonts you have available) to set Eve's font size and make it bold:

            fig.update_traces(textfont=dict(family=['Arial Black', 'Arial'],size=[15]))

            Source https://stackoverflow.com/questions/66076337

            QUESTION

            Amchart 4: How to wrap the text label in Sunburst drill-down chart? how to add labels in this
            Asked 2020-Dec-10 at 11:26

            I am using Amcharts 4's Sunburst drill-down chart and in my scenario, I have very long text labels, hence I am trying to wrap the text label. Now, this is my js code:

            ...

            ANSWER

            Answered 2020-Jul-29 at 08:43
            function collapse(slice) {
              //slice.dataItem.label.wrap = true;
              //slice.dataItem.label.truncate = false;
              slice.dataItem.label.bent = false;
              slice.dataItem.label.radius = 10;
            
            
            //Edit
            slice.dataItem.label.wrap = true; 
            slice.dataItem.label.maxWidth = 120;  
            //Edit
            
            
            
              if (slice.dataItem.sunburstDataItem.children) {
                slice.dataItem.sunburstDataItem.children.each(function(child) {
                  child.seriesDataItem.component.setState("hidden");
                  collapse(child.seriesDataItem.slice);
                })
              }
            }
            

            Source https://stackoverflow.com/questions/63035019

            QUESTION

            How do I access & control the selected segment in a plotly.js sunburst chart in React
            Asked 2020-Sep-14 at 20:28

            I have a plotly sunburst chart in my React app (just a simple react component). By default, Plotly allows the user to zoom-in on lower levels by clicking on chart segments (see first link for demonstration).

            I want to display some contextual data about the "selected" segment elsewhere on the page when a user has clicked on it (while maintaining the default zoom behaviour of the chart).

            The idiomatic way to solve this type of problem in React is to use a controlled component, where React dictates the state of the component on render, rather than the component managing the state itself (as Plotly currently does by default).

            This would be ideal as in the future I would like to store the state in the URL so that it would be possible to generate links to specific items.

            This would seem to require:

            • disabling the default click behaviour
            • storing the selected item in the React state (or elsewhere) when a segment is clicked
            • passing the selection back to Plotly every time the chart is rendered

            ... but there doesn't appear to be any info about how to do any of these things in the Plotly reference docs.

            ...

            ANSWER

            Answered 2020-Sep-14 at 19:07

            The zoom behaviour can be monitored using the plotly-sunburstclick event. When using the react component, this can be monitored using onSunburstClick (pending pull request).

            The ID of segment that will be navigated to is in the event data as the nextLevel property, which can be used to drive React behaviour (e.g. using useState). Note that is important to use this property, and not the ID of the clicked segment, as when the central segment is clicked, the chart will actually navigate up a level to the parent.

            To start to bring the zoom level fully under React's control return false from the sunburstclick event handler. This will prevent plotly from perfoming the zoom itself. Note that this will also stop the regular onClick/plotly_click from firing.

            Source https://stackoverflow.com/questions/63890472

            QUESTION

            Integrate vasturiano / `sunbrust-chart` with Angular 2-9
            Asked 2020-Mar-18 at 10:35

            It is there a way to integrate vasturiano/sunburst-chart with Angular 2 - 9? I am trying this, but is not working.

            ...

            ANSWER

            Answered 2020-Mar-05 at 09:12

            Try like this:

            index.html:

            Source https://stackoverflow.com/questions/60541172

            QUESTION

            How to format data for plotly sunburst diagram
            Asked 2019-Oct-21 at 09:34

            I'm trying to make an sunburst diagram using Plotly via R. I'm struggling with the data model required for the hierarchy, both in terms of conceptualizing how it works, and seeing if there are any easy ways to transform a regular dataframe, with columns representing different hierarchical levels, into the format needed.

            I've looked at examples for plotly sunburst charts in R, e.g., here, and seen the reference page but don't totally get the model for data formatting.

            ...

            ANSWER

            Answered 2019-Oct-21 at 09:34

            You are absolutely right, compared to the rest of the intuitiv usage of plotly's R API preparing data for a sunburst chart is rather annoying.

            I had the same problem and wrote a function based on library(data.table) to prepare the data, accepting two different data.frame input formats.

            The format required to generate a sunburst plot using data similarly structured as yours can be seen here under the section Sunburst with Repeated Labels.

            For your example it should look like this:

            Source https://stackoverflow.com/questions/57395424

            QUESTION

            Plotly sunburst plot not showing in Jupyter notebook
            Asked 2019-Oct-01 at 07:34

            I am using Plotly and Jupyter to generate some visuals to better understand user journeys online. I am using the Plotly sunburst chart since this makes a great visual for that purpose. Plotly provides an example that works great and provides the visual that I am looking to produce with my own data. I have created a dataframe that mirrors the example but when I try to use .show() no chart is produced. It appears to run fine (no errors) and produces white space where the chart should be but not chart. The data we are testing on ends up being about about 16K rows ultimately.

            I have played around with the online vs offline for Plotly neither appeared to make a difference. I tried different labels and ID's. I have also tried restarting the notebook and only running my plot instead of the example first. I have taken my data and narrowed down to only about 50 lines with 4 parent nodes and the rest decedents. All of this got the same result of the white space appearing for the plot but no plot being produced and no errors reported.

            ...

            ANSWER

            Answered 2019-Oct-01 at 07:34

            I don't have a specific solution, but at least a suggestion to the best of my abilities without your particular dataset.

            My first suspicion was that you did not have the correct packages installed, but since you've stated that

            I have played around with the online vs offline for Plotly neither appeared to make a difference

            it seems to me that your problem has to be your data, specifically the type or the structure of your data. From your referred example I tried replacing values=[10, 14, 12, 10, 2, 6, 6, 4, 4] with values=['10', '14', '12', '10', '2', '6', '6', '4', '4'], but that worked just fine and increases the probability that it's the structure and not type that causes the problems.

            Then I messed with the structure, replacing labels=["Eve", "Cain", "Seth", "Enos", "Noam", "Abel", "Awan", "Enoch", "Azura"] with labels=["Eve", "Cain", "Noam", "Abel", "Awan", "Enoch", "Azura"]. Now, no plot is produced with no error messages like this:

            My conclusion: Make sure that each observation in parents occurs in labels.

            Removing 'Noam' from labels is ok. seemingly because 'Noam' does not occur in parents:

            Removing 'Seth' from labels is not ok:

            So again, make sure that each observation in parents occurs in labels and see if that works out for you.

            Source https://stackoverflow.com/questions/58173316

            QUESTION

            How do I make all my graphs show up on my html page?
            Asked 2019-Aug-06 at 22:15

            I am arranging 4 graphs on one html page using d3.js. The problem is that though all my graphs in someway show up, they don't interact like they should be doing or they overlap the axis (like the line graph and bar graph). In terms of the sunburst graph, it disappeared when I click on it. Is it an svg naming error?

            ...

            ANSWER

            Answered 2019-Jul-31 at 17:55

            I would try to use flexbox to add the spacing you desire. Based on your code snippets, you have no CSS to tell then graphs where to actually go, so they just appear with default settings.

            Try this, it worked for me to make them into a grid.

            Source https://stackoverflow.com/questions/57292762

            QUESTION

            How to set the text attributes of the individual data labels in an Excel Sunburst Chart through Apache POI?
            Asked 2019-May-14 at 06:07

            In this post a solution was provided to set the graphical attributes of the data points.

            I now need to access the individual data point labels and change the text attributes as well. My priority is to adjust the font size, however, the ability to adjust other attributes (e.g. font, bold, italic, alignment, etc) as well would be useful. This method sets the data point fill colour. What needs to be added to set the font size of the data label for that data point?

            ...

            ANSWER

            Answered 2019-Mar-04 at 16:51

            As told in the question already, this is related to How to change the graphical attributes of a point in an Excel sunburst chart through Apache POI. In my answer there was told already that sunburst chart is of type application/vnd.ms-office.chartex+xml and so cannot be a XSSFChartas this is of type application/vnd.openxmlformats-officedocument.drawingml.chart+xml. My answer there also provides a method to nevertheless get the XML of the sunburst chart in read and write mode.

            But of course if one needs changing the XML one must know about what the XML is about. One could read Microsofts documentation starting with 2.24.3.11 CT_ChartSpace. But my approach is the following:

            The *.xlsx file is nothing else than a ZIP archive. So I create a simple sunburst chart using Excel and save this in a *.xlsx file. Then I unzip that *.xlsx file and have a look at /xl/charts/chartEx1.xml. There I can see the XML used. Now I do additional formatting the sunburst chart using Excel, save and have a look at how the XML in /xl/charts/chartEx1.xml has changed. So I can determine the meaning of the used XML.

            Using this approach I come to the conclusion that each single data label can be formatted using a where the idx is the same as the data point idx. The formatting is done in which contains paragraph and text run which is formatted then.

            Knowing this, we come to following method:

            Source https://stackoverflow.com/questions/54974045

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install sunburst-chart

            You can install using 'npm i sunburst-chart' or download it from GitHub, npm.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            Install
          • npm

            npm i sunburst-chart

          • CLONE
          • HTTPS

            https://github.com/vasturiano/sunburst-chart.git

          • CLI

            gh repo clone vasturiano/sunburst-chart

          • sshUrl

            git@github.com:vasturiano/sunburst-chart.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link