7
$\begingroup$

With

WolframLanguageData[{"ListLogPlot", "Plot", "ColorNegate"}, "Timeline"]

one gets information at what time and version a certain function was implemented:

enter image description here

UPDATE:

Show is a good idea as long as the functions were not introduced at the same time.

p1 = WolframLanguageData[{"Plot"}, "Timeline"];
p2 = WolframLanguageData[{"Sin"}, "Timeline"];
Show[p1, p2]

Here the function labels overlap:

enter image description here

Do you have an idea how a larger set of commands can be visualized in one diagram?

E.g.:

functions = {"Sin", "Cos", "Tan", "Image", "ImageApply", "Array"};

How can I make a timeline (with Show or somehow else) with no overlap?

$\endgroup$
4
  • $\begingroup$ What have you tried? Have you tried Show? Do you know how to make a combined timeline from scratch using the raw data, or would you need help with that should no other solution exist? $\endgroup$
    – C. E.
    Dec 14, 2016 at 11:32
  • $\begingroup$ @C. E. see Update ... $\endgroup$
    – mrz
    Dec 14, 2016 at 12:47
  • 1
    $\begingroup$ Use something like WolframLanguageData[{"ListLogPlot", "Plot", "ColorNegate"}, {"DatesModified", "VersionsModified"}] then parse it out using TimelinePlot[Labeled[Interval[], ....] you can modify the spacing and like or use legends. $\endgroup$
    – Ramble
    Dec 14, 2016 at 16:02
  • $\begingroup$ @Ramble: Can you show the exact solution? $\endgroup$
    – mrz
    Dec 14, 2016 at 16:06

2 Answers 2

7
$\begingroup$

Try

versionData=WolframLanguageData[{"ListLogPlot", "Plot", "ColorNegate","Sin"}, {"Name", "DateIntroduced", "DateLastModified","VersionIntroduced", "VersionLastModified"}]

partTimeLine = Partition[#, 3] & /@ versionData

TimelinePlot[Labeled[Interval[#[[2 ;; 3]]], #[[1]]] & @@@ partTimeLine]

You can then add in the version numbers in the same fashion. You will probably need to fiddle manually or use a legend to deconflict tiled labels. Or you can increase the partition to include the versions

partTimeLine = Partition[#, 5] & /@ versionData

Then change

TimelinePlot[Labeled[Interval[#[[2 ;; 3]]], #[[1]]<>ToString[#[[{4, 5}]]]] & @@@ partTimeLine]

enter image description here

enter image description here

To label line and place version numbers at each end:

TimelinePlot[
 Labeled[Interval[#[[2 ;; 3]]], #[[{1, 4, 5}]], {Bottom, Left, 
     Right}] & @@@ partTimeLine]

enter image description here

$\endgroup$
3
  • $\begingroup$ This is a nice solution ... how would you show the version number? $\endgroup$
    – mrz
    Dec 15, 2016 at 9:23
  • $\begingroup$ Thanks. Edited it to include the version number. $\endgroup$
    – Ramble
    Dec 15, 2016 at 17:04
  • $\begingroup$ Or do the same as WolframLanguageData: TimelinePlot[ Labeled[Labeled[ Interval[{DateObject[{2003, 4, 28}], DateObject[{2013, 3, 1}]}], "a"], {"b", "c"}, {Before, After}]] $\endgroup$ Jan 20, 2017 at 20:47
2
$\begingroup$

I think GraphicsColumn is what you are looking for.

functions = {"Sin", "Cos", "Tan", "Image", "ImageApply", "Array"};
plots = WolframLanguageData[functions, "Timeline"];
GraphicsColumn[plots]

plots

$\endgroup$
1
  • $\begingroup$ I wanted to see everything in one timeline ... $\endgroup$
    – mrz
    Dec 14, 2016 at 16:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.