FSharpChart.Column с меткой на легкой колонке

Я использовал библиотеку диаграмм F# для небольшого количества интерактивных диаграмм. Это очень удобно для быстрого отображения графиков данных, но отсутствие документации немного расстраивает. Например, метки кажутся размещенными на линиях сетки, а не на точках по умолчанию. Я создаю диаграмму столбцов, используя FSharpChart.Column и поэтому имеет больше смысла, чтобы метки на каждом столбце были больше, чем на линиях сетки, но я могу найти, как это сделать.

1 ответ

Решение

Указание меток в настоящее время не поддерживается библиотекой. Это, безусловно, важная вещь, которую следует добавить, поэтому я передам этот отзыв людям, которые в настоящее время работают над библиотекой.

Если вы хотите копать глубже, то это нужно сделать при привязке ряда диаграммы к источнику данных, что делается в setSeriesData функция:

let internal setSeriesData resetSeries (series:Series) data 
                           (chart:Chart) setCustomProperty =
    match data with 
    // Single Y value 
    | ChartData.YValues ys ->
        series.Points.DataBindY [| ys |]
    | ChartData.XYValues(xs, ys) ->
        series.Points.DataBindXY(xs, [| ys |])
    // (...)

Функция получает данные в различенном объединенном значении ChartData который создается всеми различными функциями построения графиков, такими как FSharpChart.Column, Я не уверен, что будет лучшей стратегией - возможно, добавить option<seq<string>> это может указать дополнительные метки. Чтобы отобразить метки, вам, вероятно, придется изменить вызов на DataBindY (или же DataBindXY) чтобы позвонить DataBind это позволяет указать дополнительные свойства (например, метки).

Что касается документации - я написал несколько статей о библиотеке, которая скоро должна появиться в сети (на самом деле на MSDN). Это не исчерпывающая документация, но она должна охватывать большинство поддерживаемых функций библиотеки.

Другие вопросы по тегам