Ich muss eine Legende zu einem Kreisdiagramm mit einem Highcharts-Paket für R auf einer glänzenden App (Highcharter, Rcharts, was auch immer) hinzufügen.Hinzufügen einer Legende zu einem Tortendiagramm mit Highcharter oder Rcharts
Ex. Code
library("shiny")
library("highcharter")
data(citytemp)
ui <- fluidPage(
h1("Highcharter Demo"),
fluidRow(
column(width = 4, class = "panel",
selectInput("type", label = "Type", width = "100%",
choices = c("line", "column", "bar", "spline")),
selectInput("stacked", label = "Stacked", width = "100%",
choices = c(FALSE, "normal", "percent")),
selectInput("theme", label = "Theme", width = "100%",
choices = c(FALSE, "fivethirtyeight", "economist",
"darkunica", "gridlight", "sandsignika",
"null", "handdrwran", "chalk")
)
),
column(width = 8,
highchartOutput("hcontainer",height = "500px")
)
)
)
server = function(input, output) {
output$hcontainer <- renderHighchart({
hc <- hc_demo() %>%
hc_rm_series("Berlin") %>%
hc_chart(type = 'pie')
if (input$stacked != FALSE) {
hc <- hc %>%
hc_plotOptions(showInLegend=TRUE,dataLabels=FALSE)
}
hc
})
}
shinyApp(ui = ui, server = server)
Der Code läuft ein crappy Beispiel eines Kreisdiagramms, und egal wo ich mich sehe nicht ein Beispiel eines highcharts Kreisdiagramm mit Legenden finden.
Versuche, es zu beheben sind:
hc_legend (enabled = TRUE) < - nicht funktioniert, macht keine Änderung.
hc_plotOptions (showInLegend = TRUE, dataLabels = FALSE) < - Wieder keine Änderung
Rcharts mit ähnlichen Versuchen verwenden, sie beide gescheitert, ich wurde dann hoffnungslos verloren für highcharts durch Quellcode suchen
Mit ähnlichen Funktionen war ich in der Lage, Highchart-Tortendiagramme mit Legenden in einem typischen JS-Format zu erstellen, indem ich eine der beiden obigen Lösungen verwendete. Hat jemand eine vernünftige Lösung für dieses Problem? Möglicherweise eine Verbindung zu einer anständigen Ressource, um es herauszufinden?
aktuelle JS Beispiel von Highcharts mit Legende, schamlos von offiziellen Highcharts Website gerissen.
$(function() {
$(document).ready(function() {
// Build the chart
$('#container').highcharts({
chart: {
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false,
type: 'pie'
},
title: {
text: 'Browser market shares January, 2015 to May, 2015'
},
tooltip: {
pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
showInLegend: true
}
},
series: [{
name: 'Brands',
colorByPoint: true,
data: [{
name: 'Microsoft Internet Explorer',
y: 56.33
}, {
name: 'Chrome',
y: 24.03,
sliced: true,
selected: true
}, {
name: 'Firefox',
y: 10.38
}, {
name: 'Safari',
y: 4.77
}, {
name: 'Opera',
y: 0.91
}, {
name: 'Proprietary or Undetectable',
y: 0.2
}]
}]
});
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/modules/exporting.js"></script>
<div id="container" style="min-width: 310px; height: 400px; max-width: 600px; margin: 0 auto"></div>
Sie können versuchen, Ihre eigene HTML-Legende vorzubereiten, wie hier: http://jsfiddle.net/N3KAC/1/ –
@SebastianBochan Ich werde Sie wissen lassen, wie es geht. Ich könnte das in R oder glänzend einbauen. – Edge363
Sorry, ich bin nicht vertraut mit den R-Edelsteinen etc;) –